章节大纲

  • 请将 (e, n) 作为公钥,加密消息 "A top secret!"(不包括引号)。我们需要将 ACSII 字符串转换为十六进制字符串,然后用 BN_hex2bn() 将十六进制字符串转换为 BIGNUM。下面的 python 命令可以用于将原始的 ASCII 字符串转换为十六进制字符串。
    $ python  -c 'print("A top secret!".encode("hex"))'
    4120746f702073656372657421

    公钥如下所示(十六进制)。这里还提供了私钥 d 来帮助你验证你的加密结果。
     n = DCBFFE3E51F62E09CE7032E2677A78946A849DC4CDDE3A4D0CB81629242FB1A5
     e = 010001 (这个 16 进制数的值是 65537)
     M = A top secret!
     d = 74D806F9F3A62BAE331FFE3F0A68AFE35B3D2E4794148AACBC26AA381CD7D30D