X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=pygost%2Fgost3412.py;h=296e4fbea72a794ca625c71663ce38b223b0d9e6;hb=4277661e11e63906d923827e5c124877f1dc0c8d;hp=c6528da3f83460ef2da0edcee19a265b86a2fd8e;hpb=5ecaafbe1a87f9a311a18574653e6dbc75a776b9;p=pygost.git diff --git a/pygost/gost3412.py b/pygost/gost3412.py index c6528da..296e4fb 100644 --- a/pygost/gost3412.py +++ b/pygost/gost3412.py @@ -1,6 +1,6 @@ # coding: utf-8 # PyGOST -- Pure Python GOST cryptographic functions library -# Copyright (C) 2015-2019 Sergey Matveev +# Copyright (C) 2015-2020 Sergey Matveev # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -23,9 +23,11 @@ from pygost.gost28147 import decrypt as gost28147_decrypt from pygost.gost28147 import encrypt as gost28147_encrypt from pygost.gost28147 import ns2block as gost28147_ns2block from pygost.utils import strxor -from pygost.utils import xrange # pylint: disable=redefined-builtin +from pygost.utils import xrange +KEY_SIZE = 32 + LC = bytearray(( 148, 32, 133, 16, 194, 192, 1, 251, 1, 192, 194, 16, 133, 32, 148, 1, )) @@ -123,6 +125,8 @@ def lp(blk): class GOST3412Kuznechik(object): """GOST 34.12-2015 128-bit block cipher Кузнечик (Kuznechik) """ + blocksize = 16 + def __init__(self, key): """ :param key: encryption/decryption key @@ -156,6 +160,8 @@ class GOST3412Kuznechik(object): class GOST3412Magma(object): """GOST 34.12-2015 64-bit block cipher Магма (Magma) """ + blocksize = 8 + def __init__(self, key): """ :param key: encryption/decryption key