学習環境
- 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 = [(13, 11), (64, 1)]
nums = [6, 4]
for (a, m), num in zip(ts, nums):
x = num + m * n
self.assertEqual((a * x - 1) % m, 0)
if __name__ == '__main__':
main()
入出力結果(Bash、cmd.exe(コマンドプロンプト)、Terminal、Jupyter(IPython))
$ ./sample4.py . ---------------------------------------------------------------------- Ran 1 test in 0.011s OK $
0 コメント:
コメントを投稿