From b79ed604b7580f2b1d4e3eeb8685a2924c8fc64f Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Sun, 4 Dec 2016 23:35:55 +0300 Subject: [PATCH] PEP8 and Pylint related fixes --- pygost/gost28147.py | 2 +- pygost/gost28147_mac.py | 2 +- pygost/gost3410.py | 2 ++ pygost/gost34112012.py | 37 +++++++++++++++++++------------------ pygost/gost341194.py | 8 ++++---- pygost/gost3412.py | 8 +++++++- pygost/utils.py | 2 +- 7 files changed, 35 insertions(+), 26 deletions(-) diff --git a/pygost/gost28147.py b/pygost/gost28147.py index 9b21047..2ae2e1d 100644 --- a/pygost/gost28147.py +++ b/pygost/gost28147.py @@ -28,7 +28,7 @@ from pygost.gost3413 import pad1 from pygost.gost3413 import pad2 from pygost.utils import hexdec from pygost.utils import strxor -from pygost.utils import xrange +from pygost.utils import xrange # pylint: disable=redefined-builtin KEYSIZE = 32 diff --git a/pygost/gost28147_mac.py b/pygost/gost28147_mac.py index 164abcb..adcd464 100644 --- a/pygost/gost28147_mac.py +++ b/pygost/gost28147_mac.py @@ -30,7 +30,7 @@ from pygost.gost28147 import xcrypt from pygost.gost3413 import pad1 from pygost.iface import PEP247 from pygost.utils import strxor -from pygost.utils import xrange +from pygost.utils import xrange # pylint: disable=redefined-builtin digest_size = 8 SEQ_MAC = ( diff --git a/pygost/gost3410.py b/pygost/gost3410.py index 84881b6..b06ed77 100644 --- a/pygost/gost3410.py +++ b/pygost/gost3410.py @@ -94,6 +94,7 @@ CURVE_PARAMS = { "0000000000000000000000000000000000000000000000000000000000000000", "41ECE55743711A8C3CBF3783CD08C0EE4D4DC440D4641A8F366E550DFDB3BB67", ), + # pylint: disable=line-too-long "GostR3410_2012_TC26_ParamSetA": ( "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC7", "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27E69532F48D89116FF22B8D4E0560609B4B38ABFAD2B85DCACDB1411F10B275", @@ -110,6 +111,7 @@ CURVE_PARAMS = { "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002", "1A8F7EDA389B094C2C071E3647A8940F3C123B697578C213BE6DD9E6C8EC7335DCB228FD1EDF4A39152CBCAAF8C0398828041055F94CEEEC7E21340780FE41BD" ), + # pylint: enable=line-too-long } for c, params in CURVE_PARAMS.items(): CURVE_PARAMS[c] = [hexdec(param) for param in params] diff --git a/pygost/gost34112012.py b/pygost/gost34112012.py index bfb7cc9..e71f388 100644 --- a/pygost/gost34112012.py +++ b/pygost/gost34112012.py @@ -26,12 +26,12 @@ from struct import unpack from pygost.iface import PEP247 from pygost.utils import hexdec -from pygost.utils import hexenc from pygost.utils import strxor -from pygost.utils import xrange +from pygost.utils import xrange # pylint: disable=redefined-builtin BLOCKSIZE = 64 +# pylint: disable=bad-whitespace,bad-continuation Pi = bytearray(( 252, 238, 221, 17, 207, 110, 49, 22, 251, 196, 250, 218, 35, 197, 4, 77, 233, 119, 240, 219, 147, 46, @@ -60,22 +60,22 @@ Pi = bytearray(( )) A = [unpack(">Q", hexdec(s))[0] for s in ( - "8e20faa72ba0b470", "47107ddd9b505a38", "ad08b0e0c3282d1c", "d8045870ef14980e", - "6c022c38f90a4c07", "3601161cf205268d", "1b8e0b0e798c13c8", "83478b07b2468764", - "a011d380818e8f40", "5086e740ce47c920", "2843fd2067adea10", "14aff010bdd87508", - "0ad97808d06cb404", "05e23c0468365a02", "8c711e02341b2d01", "46b60f011a83988e", - "90dab52a387ae76f", "486dd4151c3dfdb9", "24b86a840e90f0d2", "125c354207487869", - "092e94218d243cba", "8a174a9ec8121e5d", "4585254f64090fa0", "accc9ca9328a8950", - "9d4df05d5f661451", "c0a878a0a1330aa6", "60543c50de970553", "302a1e286fc58ca7", - "18150f14b9ec46dd", "0c84890ad27623e0", "0642ca05693b9f70", "0321658cba93c138", - "86275df09ce8aaa8", "439da0784e745554", "afc0503c273aa42a", "d960281e9d1d5215", - "e230140fc0802984", "71180a8960409a42", "b60c05ca30204d21", "5b068c651810a89e", - "456c34887a3805b9", "ac361a443d1c8cd2", "561b0d22900e4669", "2b838811480723ba", - "9bcf4486248d9f5d", "c3e9224312c8c1a0", "effa11af0964ee50", "f97d86d98a327728", - "e4fa2054a80b329c", "727d102a548b194e", "39b008152acb8227", "9258048415eb419d", - "492c024284fbaec0", "aa16012142f35760", "550b8e9e21f7a530", "a48b474f9ef5dc18", - "70a6a56e2440598e", "3853dc371220a247", "1ca76e95091051ad", "0edd37c48a08a6d8", - "07e095624504536c", "8d70c431ac02a736", "c83862965601dd1b", "641c314b2b8ee083", + "8e20faa72ba0b470", "47107ddd9b505a38", "ad08b0e0c3282d1c", "d8045870ef14980e", + "6c022c38f90a4c07", "3601161cf205268d", "1b8e0b0e798c13c8", "83478b07b2468764", + "a011d380818e8f40", "5086e740ce47c920", "2843fd2067adea10", "14aff010bdd87508", + "0ad97808d06cb404", "05e23c0468365a02", "8c711e02341b2d01", "46b60f011a83988e", + "90dab52a387ae76f", "486dd4151c3dfdb9", "24b86a840e90f0d2", "125c354207487869", + "092e94218d243cba", "8a174a9ec8121e5d", "4585254f64090fa0", "accc9ca9328a8950", + "9d4df05d5f661451", "c0a878a0a1330aa6", "60543c50de970553", "302a1e286fc58ca7", + "18150f14b9ec46dd", "0c84890ad27623e0", "0642ca05693b9f70", "0321658cba93c138", + "86275df09ce8aaa8", "439da0784e745554", "afc0503c273aa42a", "d960281e9d1d5215", + "e230140fc0802984", "71180a8960409a42", "b60c05ca30204d21", "5b068c651810a89e", + "456c34887a3805b9", "ac361a443d1c8cd2", "561b0d22900e4669", "2b838811480723ba", + "9bcf4486248d9f5d", "c3e9224312c8c1a0", "effa11af0964ee50", "f97d86d98a327728", + "e4fa2054a80b329c", "727d102a548b194e", "39b008152acb8227", "9258048415eb419d", + "492c024284fbaec0", "aa16012142f35760", "550b8e9e21f7a530", "a48b474f9ef5dc18", + "70a6a56e2440598e", "3853dc371220a247", "1ca76e95091051ad", "0edd37c48a08a6d8", + "07e095624504536c", "8d70c431ac02a736", "c83862965601dd1b", "641c314b2b8ee083", )] Tau = ( @@ -88,6 +88,7 @@ Tau = ( 6, 14, 22, 30, 38, 46, 54, 62, 7, 15, 23, 31, 39, 47, 55, 63, ) +# pylint: disable=bad-whitespace,bad-continuation C = [hexdec("".join(s))[::-1] for s in ( ( diff --git a/pygost/gost341194.py b/pygost/gost341194.py index 0a71518..b57fd6a 100644 --- a/pygost/gost341194.py +++ b/pygost/gost341194.py @@ -34,7 +34,7 @@ from pygost.utils import hexdec from pygost.utils import hexenc from pygost.utils import long2bytes from pygost.utils import strxor -from pygost.utils import xrange +from pygost.utils import xrange # pylint: disable=redefined-builtin DEFAULT_SBOX = "GostR3411_94_TestParamSet" @@ -161,18 +161,18 @@ class GOST341194(PEP247): def digest(self): """ Get hash of the provided data """ - l = 0 + _len = 0 checksum = 0 h = 32 * b"\x00" m = self.data for i in xrange(0, len(m), BLOCKSIZE): part = m[i:i + BLOCKSIZE][::-1] - l += len(part) * 8 + _len += len(part) * 8 checksum = addmod(checksum, int(hexenc(part), 16), 2 ** 256) if len(part) < BLOCKSIZE: part = b"\x00" * (BLOCKSIZE - len(part)) + part h = _step(h, part, self.sbox) - h = _step(h, 24 * b"\x00" + pack(">Q", l), self.sbox) + h = _step(h, 24 * b"\x00" + pack(">Q", _len), self.sbox) checksum = hex(checksum)[2:].rstrip("L") if len(checksum) % 2 != 0: diff --git a/pygost/gost3412.py b/pygost/gost3412.py index ba204a0..70c1c90 100644 --- a/pygost/gost3412.py +++ b/pygost/gost3412.py @@ -24,7 +24,7 @@ Several precalculations are performed during this module importing. """ from pygost.utils import strxor -from pygost.utils import xrange +from pygost.utils import xrange # pylint: disable=redefined-builtin LC = bytearray(( @@ -75,7 +75,10 @@ def gf(a, b): # optimization. # Actually it can be computed only once and saved on the disk. ######################################################################## + + GF = [bytearray(256) for _ in xrange(256)] + for x in xrange(256): for y in xrange(256): GF[x][y] = gf(x, y) @@ -104,7 +107,10 @@ def Linv(blk): # Precalculate values of the C -- it does not depend on key. # Actually it can be computed only once and saved on the disk. ######################################################################## + + C = [] + for x in range(1, 33): y = bytearray(16) y[15] = x diff --git a/pygost/utils.py b/pygost/utils.py index 3f50af3..6f4c224 100644 --- a/pygost/utils.py +++ b/pygost/utils.py @@ -20,7 +20,7 @@ from codecs import getencoder from sys import version_info -xrange = range if version_info[0] == 3 else xrange +xrange = range if version_info[0] == 3 else xrange # pylint: disable=redefined-builtin def strxor(a, b): -- 2.44.0