V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
cfans1993
V2EX  ›  问与答

数论,加密,仿射变换后唯一性问题

  •  
  •   cfans1993 · 2015-09-22 20:27:38 +08:00 · 1774 次点击
    这是一个创建于 3350 天前的主题,其中的信息可能已经有所发展或是发生改变。
    简单说明

    对 26 个字母进行变换达到加密的效果

    变换公式 C ≡ aP+b(mod 26) , 0≤C≤25

    其中 P :明文
    (a,26)=1 (即互素)
    b:任意整数
    各个英文字母与数字对号 a-0 b-1 ... z-25

    例:

    如要对字母 b 进行加密, b 对应 1 ,如果 a=7,b=10
    那么加密:(7x1+10)mod 26= 17
    得到对应的密文字母: r

    问题

    为什么明文字母与加密字母是一对一的,而不存在多对一的情况

    2 条回复    2015-09-22 22:29:36 +08:00
    hahastudio
        1
    hahastudio  
       2015-09-22 20:45:51 +08:00   ❤️ 1
    这个简单啊,反证法
    1. 假设存在 P1, P2 ∈[0, 26],且 P1 < P2 , aP1 + b ≡ C, aP2 + b ≡ C ,则有
    aP1 + b + 26n = aP2 + b , n∈N+
    a (P2 - P1) = 26 n
    ∵(a, n) = 1, P2 - P1 ∈N+
    ∴n / a >= 1
    ∴P2 - P1 >= 26 ,与假设矛盾
    2. 假设存在 C1, C2 ∈[0, 26],且 C1 < C2 , aP + b ≡ C1, aP + b ≡ C2 ,则有
    C1 + 26n = C2 , n ∈N+
    C2 - C1 >= 26 ,与假设矛盾

    作业自己写,我这只是自我满足
    cfans1993
        2
    cfans1993  
    OP
       2015-09-22 22:29:36 +08:00
    @hahastudio 明白意思了,谢谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   907 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 21:45 · PVG 05:45 · LAX 13:45 · JFK 16:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.