学習環境
- Surface、Surface ペン(端末)
- Windows 10 Pro (OS)
- Nebo(Windows アプリ)
- iPad Pro 10.5 + Apple Pencil
- MyScript Nebo - MyScript(iPad アプリ(iOS))
- 参考書籍
中学数学からはじめる暗号入門 ~現代の暗号はどのようにして作られたのか~ (知りたい!サイエンス 141) (関根 章道(著)、技術評論社)の後編(現代の暗号)、第6章(RSA暗号を作ってみよう(暗号化) - 合同式)のやってみよう③の解答を求めてみる。
コード
Python 3
#!/usr/bin/env python3
from unittest import TestCase, main
from sympy import symbols
class MyTest(TestCase):
def setUp(self):
pass
def tearDown(self):
pass
def test(self):
n = symbols('n', integer=True)
ts = [(4, 5, 3),
(5, 3, 4)]
xs = [2, 3]
for (a, b, c), x in zip(ts, xs):
self.assertEqual((a * (x + c * n) - b) % c, 0)
if __name__ == '__main__':
main()
入出力結果(Bash、cmd.exe(コマンドプロンプト)、Terminal、Jupyter(IPython))
$ ./sample3.py . ---------------------------------------------------------------------- Ran 1 test in 0.017s OK $
0 コメント:
コメントを投稿