Cryptographic Engineering Course Seminar At Sharif University Of Technology (Winter 2017)
Instructor : Dr.Siavash Bayat-Sarmadi
Download Slides (Format : PDF, Size : 1.1 MB)
>>> IntegerMultiplication("1 1","1 1",Base=2)
>>> 1 0 0 1
Complexity : 3
additions, 2
data read (Inner Loop)
- It seems this algorithm is wrong and
(U,H,L)
should be set to zero after each iteration and add shifted(U,H,L)
outside of the loop (modified in code)
>>> IntegerSquaring("1 1","1 1",Base=2)
>>> 1 1 0 1
>>> IntegerSquaringModified("1 1",Base=2)
>>> 1 0 0 1
Complexity : 3
additions, 2
data read (Inner Loop)
- Run
main.py
for automatic doctest -->python main.py
orpython3 main.py
- Import
IntegerSquaring
andIntegerMultiplication
andIntegerSquaringModified
frommain.py
:
>>> from main import IntegerSquaring,IntegerMultiplication,IntegerSquaringModified
>>> IntegerSquaring("1 6",Base=10)
'3 8 6'
>>> IntegerSquaringModified("1 6",Base=10)
'2 5 6'
>>> IntegerMultiplication("1 6","1 6",Base=10)
'2 5 6'
- Enter digits with one space, for example :
"31 12"
in base32