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

课堂上传纸条如何防范中间人攻击?

  •  
  •   JoyNeop · 2014-01-19 18:50:56 +08:00 · 9300 次点击
    这是一个创建于 3994 天前的主题,其中的信息可能已经有所发展或是发生改变。
    例如人肉 RSA 啥的……
    第 1 条附言  ·  2014-01-19 22:57:41 +08:00
    此语境中中间人攻击指代 both peeping and falsifying.
    97 条回复    1970-01-01 08:00:00 +08:00
    cxe2v
        1
    cxe2v  
       2014-01-19 18:59:15 +08:00
    加密
    lightening
        2
    lightening  
       2014-01-19 18:59:28 +08:00
    我以前和女友上课传纸条有一套人肉的对称密钥体系……只有我们看得懂的
    Ever
        3
    Ever  
       2014-01-19 19:04:35 +08:00   ❤️ 1
    重要信息怎么能用纸? 在那个没有手机的年代, 我们传递重要信息都是走文曲星的红外的。
    lanbing
        4
    lanbing  
       2014-01-19 19:07:23 +08:00
    点对点。。
    whtsky
        5
    whtsky  
       2014-01-19 19:08:15 +08:00   ❤️ 5
    你是怎么解决丢包问题的?
    JoyNeop
        6
    JoyNeop  
    OP
       2014-01-19 19:12:21 +08:00
    @whtsky 写在同一张纸上……
    JoyNeop
        7
    JoyNeop  
    OP
       2014-01-19 19:12:29 +08:00
    @lightening 求开源……
    Seita
        8
    Seita  
       2014-01-19 19:13:55 +08:00 via Android
    发送握手包。
    JoyNeop
        9
    JoyNeop  
    OP
       2014-01-19 19:15:34 +08:00
    @Seita 额,那个是传输层的吧…… 我想在应用层加密……
    chenshaoju
        10
    chenshaoju  
       2014-01-19 19:17:04 +08:00
    Numbcoder
        11
    Numbcoder  
       2014-01-19 19:19:06 +08:00
    每人准备一本新华字典,把要表达的内容一个个转化为字典的页数和行数
    Mutoo
        12
    Mutoo  
       2014-01-19 19:19:17 +08:00
    某A:“唉 这啥 好像没什么用。”,扔了。
    JoyNeop
        13
    JoyNeop  
    OP
       2014-01-19 19:25:48 +08:00
    @Numbcoder 静态密码本不能满足安全性需求……需要密钥加密……
    yylzcom
        14
    yylzcom  
       2014-01-19 19:25:54 +08:00 via Android
    看到各位的回复笑死我了
    JoyNeop
        15
    JoyNeop  
    OP
       2014-01-19 19:26:34 +08:00
    @chenshaoju 古典密码不行…… 要数学密码……
    sophy
        16
    sophy  
       2014-01-19 19:28:45 +08:00   ❤️ 1
    最简单的就是加密就行了啊,或者摩斯电码
    wuyamoyun
        17
    wuyamoyun  
       2014-01-19 19:31:19 +08:00   ❤️ 3
    加容器上锁即可,比如大木箱
    JoyNeop
        18
    JoyNeop  
    OP
       2014-01-19 19:35:37 +08:00
    @Mutoo 假设路由不会丢包
    whtsky
        19
    whtsky  
       2014-01-19 19:39:18 +08:00
    @JoyNeop 会被拿来打草的→_→
    Mutoo
        20
    Mutoo  
       2014-01-19 19:50:40 +08:00
    等人肉加密解密完一节课都过去了,有什么事不能下课说,不然发短信也行啊。

    目测是表白信息……
    sethverlo
        21
    sethverlo  
       2014-01-19 20:16:57 +08:00
    楼主问的「中间人」是指班主任么?
    zhatrix
        22
    zhatrix  
       2014-01-19 20:29:10 +08:00   ❤️ 2
    你需要的是一个CA,解决中间人可信问题
    zorceta
        23
    zorceta  
       2014-01-19 20:38:58 +08:00 via Android
    @zhatrix 在这种应用情景下没有可靠的CA

    @JoyNeop 丢包问题可以通过明码表明收发件人解决,在题目预设情景下中转路由不会随意丢包,但要注意可能的出于“好奇”的拦截

    加密的话可以考虑普通加密之后位反转,或者借鉴XX小虎队的矩阵加密
    xuan_lengyue
        24
    xuan_lengyue  
       2014-01-19 21:03:27 +08:00
    显然用对称密钥体系,下课的时候交换秘钥。。。一节课的时间基本上没人能破解吧。。
    n0b0dy
        25
    n0b0dy  
       2014-01-19 21:07:44 +08:00
    私下约定一个加密算法
    字顺序打乱 插入无意义字符 图形替换文字 缩略 昵称
    shiny
        26
    shiny  
       2014-01-19 21:08:19 +08:00
    如果只是要校验下是否被篡改,只需要对内容做个签名,比如数下字数,加上所有字的笔画数,然后把数字写在尾部。
    Perry
        27
    Perry  
       2014-01-19 21:09:30 +08:00
    @Numbcoder Sherlock...
    AWSAM
        28
    AWSAM  
       2014-01-19 21:10:10 +08:00
    最后面加上一个数字 总字数验证 内容修改作废。。
    lch21
        29
    lch21  
       2014-01-19 21:16:50 +08:00
    加密,然后用标签打印机打印成二维码
    liliang13
        30
    liliang13  
       2014-01-19 21:17:51 +08:00   ❤️ 1
    @shiny
    @AWSAM

    数字还要大写是么 = =
    laukwanchan
        31
    laukwanchan  
       2014-01-19 21:22:47 +08:00
    加密另外还要二次验证么
    zorceta
        32
    zorceta  
       2014-01-19 21:32:21 +08:00 via Android
    其实我有一个非常好的方法,中间人一点儿办法都没有,也不需要什么加密啊什么的











    QQ
    hzlzh
        33
    hzlzh  
       2014-01-19 21:36:48 +08:00
    @whtsky 你是怎么解决丢包问题的?+1
    给你点个赞
    binux
        34
    binux  
       2014-01-19 21:40:01 +08:00
    纸条不是天然自带签名的吗。人肉伪造签名多难啊
    而且传递过程可监控,不要想那么多好不好
    chairuosen
        35
    chairuosen  
       2014-01-19 21:44:55 +08:00
    用信封传递,然后蜡封
    zckevin
        36
    zckevin  
       2014-01-19 22:06:50 +08:00
    直接广播好了,姑娘觉得比较浪漫。。
    chlx
        37
    chlx  
       2014-01-19 22:07:46 +08:00
    字迹即签名
    JoyNeop
        38
    JoyNeop  
    OP
       2014-01-19 22:09:55 +08:00
    @binux 主要防的不是伪造是监控……
    @zckevin 位置将会被探知!!!!!
    @sethverlo 任何其他人
    romoo
        39
    romoo  
       2014-01-19 22:14:19 +08:00
    POST 的时候要附带参数「好处」给中间人看。
    PotatoBrother
        40
    PotatoBrother  
       2014-01-19 22:20:28 +08:00 via iPhone
    会不会有延迟,老师监督下不能直接打开看的吧,要是能实现实时交流就好了
    duzhe0
        41
    duzhe0  
       2014-01-19 22:24:37 +08:00
    靠熟悉对方字迹和监视传输过程应该足够了吧
    ETiV
        42
    ETiV  
       2014-01-19 22:32:16 +08:00
    @binux 如果是如标题所说, 防止中间人攻击, 那就同意這哥们说的. 笔迹辨认就行了.

    防止监控那就...真...的...需要加密了

    上课不好好听课!!! 这个不好.
    momosky
        43
    momosky  
       2014-01-19 22:35:05 +08:00
    为了解决这个问题,我的做法是,写一张纸条,内容是随便聊的,比如借作业抄,然后用一直钢笔夹着纸条发出。信息的纸条放在钢笔里面。
    chlx
        44
    chlx  
       2014-01-19 22:38:47 +08:00
    学门小众的语言,一举两得
    welsonla
        45
    welsonla  
       2014-01-19 22:50:21 +08:00
    哥提醒下,不要md5加密原数据
    kachens
        46
    kachens  
       2014-01-19 22:57:01 +08:00
    摩斯密码
    multiple1902
        47
    multiple1902  
       2014-01-19 23:19:52 +08:00
    都没有提到 nonce?小心重放攻击。
    x86
        48
    x86  
       2014-01-19 23:40:57 +08:00
    现在都这么高端了
    revlis7
        49
    revlis7  
       2014-01-19 23:44:37 +08:00
    读小学时用1980版新华字典做过类似的事情,页码+字序,现在觉得自己好无聊啊。
    lightening
        50
    lightening  
       2014-01-20 00:33:40 +08:00
    @JoyNeop 其实也不是什么秘钥体系,是最简单的替换密码而已,而且和原先的字母有关联性很大,真心想破解还是很容易的(虽然从来没有人成功破解过)。好处是非常容易记忆,我自己写起来和写英文字母一样熟练,可以无障碍直接阅读。
    https://dl.dropboxusercontent.com/u/19974230/IMG_0134.jpg

    OMG,已经过去8年了,我居然还记得怎么写。
    RockyLee
        51
    RockyLee  
       2014-01-20 00:51:26 +08:00
    @lightening 在加上自创语法就更好了
    iqincai
        52
    iqincai  
       2014-01-20 00:53:42 +08:00 via Android
    @sophy 误点发送,摩尔码是要累死人的节奏啊... ...
    ripplecn
        53
    ripplecn  
       2014-01-20 05:47:58 +08:00   ❤️ 2
    伪装或寄生在正常流量上,比如把纸条卷在笔芯上然后把笔借她用。载体和名义随便,目的是不让人发现你在传递信息。

    频率高了可能会引起怀疑,不过可以给有截获需求的人准备个蜜罐,比如纸条上看起来只有“上课注意听讲”,而实际上“待我长发及腰,少女娶我可好”这种信息量比较大的要用铅笔涂一下才能看到。

    如果单纯想享受加密解密,我觉得随便一种加密方式就好了……大家都是人脑,会不会被人破解要看那人如何看待机会成本,遇到那种专业拆鸳鸯的还是没辙的。
    happypy1
        54
    happypy1  
       2014-01-20 06:31:48 +08:00
    @zorceta 麻花疼是中间人。。
    arkilis
        55
    arkilis  
       2014-01-20 07:26:12 +08:00
    先找个女友练练先
    zhao
        56
    zhao  
       2014-01-20 08:59:20 +08:00
    为啥不用速记?
    ijse
        57
    ijse  
       2014-01-20 09:05:17 +08:00
    以前用过五笔编码传纸条。。。 只是解码时候稍麻烦点,, 不过很有乐趣。。
    ybh37
        58
    ybh37  
       2014-01-20 09:06:30 +08:00
    不是有用画画的嘛?
    我觉得还是多表置换加密靠谱,简单易操作。可惜英语水平太差
    zhatrix
        59
    zhatrix  
       2014-01-20 09:30:17 +08:00
    先鉴权后加密

    比如使用一个可以设置密码的盒子,盒子里面放置已经加密的内容

    密码设置成周期变化,如果在一段时间内没有双方没有收到盒子,就是被监控了,这里面时间戳好像是个问题
    jason52
        60
    jason52  
       2014-01-20 09:37:27 +08:00
    借用truecrypt的思想,利用藏头诗原理实现 plausible deniability
    xavierskip
        61
    xavierskip  
       2014-01-20 09:56:17 +08:00
    @lightening 你这个有点意思。相对于计算机中有限的字符,笔画很容易就创造了新的字符。
    Davidwg
        62
    Davidwg  
       2014-01-20 10:19:03 +08:00
    你若攻击我,我便攻击你。。。
    sedgwickz
        63
    sedgwickz  
       2014-01-20 10:21:16 +08:00
    之前有个东西,在纸上写字看不到,用铅笔涂抹之后就能看到,算是一种利用物理变化解决安全问题吧:)
    rrfeng
        64
    rrfeng  
       2014-01-20 10:28:51 +08:00
    一次一密就可以了嘛

    预先编好密码本……

    密码本是各自保密的,然后加密传送。
    xoxo
        65
    xoxo  
       2014-01-20 10:35:00 +08:00
    #生成两份非对称密钥对,

    define pub1, pub2, pem1, pem2

    #pub1和pem1是写答案的人生成的 此处的[私钥]用于*加密*,[公钥]用于*解密*
    #pub2和pem2用看答案的人生成的 此处的[公钥]用于*加密*,[私钥]用于*解密*


    #首先重要一点,交换公钥,二者可以在考试之前交换好。


    #然后在传递答案过程中,写答案的人用 自己的私钥第一重加密数据, 再用看答案的人的公钥第二重加密数据;

    #看答案的人用自己的私钥第二重解密数据,再用写答案的人的公钥第一重解密数据,看到原答案。



    可能不严谨。。。
    DylanRing0
        66
    DylanRing0  
       2014-01-20 10:44:09 +08:00 via Android
    密码本比较靠谱。。
    可以将特定的语句插在正常信息中,每隔一段插一个,这样可以鉴定语句来路的真实性
    我只能说以前和同桌玩过,传输效率低得一逼
    但是相比其他的应该还是更快的
    主要是实时解密这点比较好
    hitsmaxft
        67
    hitsmaxft  
       2014-01-20 10:55:23 +08:00
    哈哈, 我觉得有些同学太没幽默感了。 非得要提醒qq什么的。
    acros
        68
    acros  
       2014-01-20 10:55:36 +08:00   ❤️ 4
    太弱了。
    纸条密码的需求是快速人脑转码。
    给lz一个简单的方法:写拼音。然后将字母个别倒置,加入干扰。
    举个例子一句话:“饭吃了吗”
    拼音 - FAN CHI LE MA
    倒置,个别字母倒置就可以,比如那种倒过来看像数字的(参考计算器显示)
    这里就是 - FAN C41 73 WA
    加入混淆字母,空格用V**A表示无效位,这里随便举例一下,可以自己发挥。
    这样结果就是 FANVSPA41VEGA73VQWAWA
    虽然在数学研究上容易破解,但是实际生活用毫无压力,最主要的是直观,收件者划掉干扰位,倒置一下数字就很好读了。
    zorceta
        69
    zorceta  
       2014-01-20 11:02:30 +08:00 via Android
    法语 德语 意大利语 葡萄牙语 西班牙语
    俄语
    拉丁语
    sniper1211
        70
    sniper1211  
       2014-01-20 11:06:12 +08:00
    年轻真好……好几年没传纸条了……当年我是用数字替换拼音的,感觉好低端啊
    goophy
        71
    goophy  
       2014-01-20 11:20:36 +08:00
    @zorceta 哈,我也建议小语种
    sqbing
        72
    sqbing  
       2014-01-20 11:24:34 +08:00
    最简单的,全异或
    hahastudio
        73
    hahastudio  
       2014-01-20 11:25:04 +08:00
    证明LZ有一个陪着无聊的小伙伴= =
    shunai
        74
    shunai  
       2014-01-20 11:25:28 +08:00
    A. 监控传输

    1.丢包重传
    2.数据加密

    B. 点对点传
    wdlth
        75
    wdlth  
       2014-01-20 11:30:40 +08:00
    防得了中间人防不了Connection Reset。
    manhere
        76
    manhere  
       2014-01-20 11:34:02 +08:00 via Android
    前提你得先有一个女友
    Smartype
        77
    Smartype  
       2014-01-20 11:51:14 +08:00
    http://en.m.wikipedia.org/wiki/Diffie–Hellman_key_exchange
    这可以人肉算不? mod 就够了。
    a-z -> 0-26
    space -> 27
    oott123
        78
    oott123  
       2014-01-20 12:01:12 +08:00
    ……采用「全过程监视」法和「拳头威胁」法。
    mozutaba
        79
    mozutaba  
       2014-01-20 12:20:51 +08:00
    都用日语写。 他们除了雅蠛蝶啥都看不懂
    Jason_C
        80
    Jason_C  
       2014-01-20 12:24:37 +08:00 via iPhone
    你们先研究一套可行的方案,我和女友先去躺如家
    csx163
        81
    csx163  
       2014-01-20 12:26:44 +08:00
    藏头诗吧?
    carlhan
        82
    carlhan  
       2014-01-20 14:38:32 +08:00
    还是 Hybird 。。。
    JoyNeop
        83
    JoyNeop  
    OP
       2014-01-20 15:23:05 +08:00
    @carlhan 到处改了一圈唯独 V2EX 没改 =。=
    oldcai
        84
    oldcai  
       2014-01-20 15:35:17 +08:00
    先写一份冗余的
    比如:
    这是怎么回事,刚才睡着了,是真的么?上课呢,老师讲的内容都没听见吧?!
    再传一份去噪声的:
    是怎么回事,刚睡着了么?上课呢,老师讲的都没听见吧?!

    得出真实内容:
    这才是真的内容

    再还担心,就信封上写好传递路线,两封信不要经过同一个人的手。
    acgism
        85
    acgism  
       2014-01-20 15:39:52 +08:00   ❤️ 1
    對方看到紙條寫著

    RPcPtGqJmLmspdsEzmWzx9sdaAZnd27MyzTWzoHuMfQAxFkYgzhCWQ2xqVWVfAM9kwwmRXmUKvHdZkPaGvb7PBiqtWQp7vKzVzgvnjDwqGatoAyn3vpUFhTiFBnsw2ZEDk4NCJEhFooaQTCuGyDJyTBYnDKqrcGehnxiJp23

    然後跟你絕交了......
    guoker
        86
    guoker  
       2014-01-20 16:23:02 +08:00
    直连
    guoker
        87
    guoker  
       2014-01-20 16:25:10 +08:00
    @oldcai 比较靠谱,问题是你怎么确认收得到
    young
        88
    young  
       2014-01-20 16:35:49 +08:00
    噢,为啥不想办法凑成同桌,为啥... 顺便问下,这是再聊技术吗?
    mozutaba
        89
    mozutaba  
       2014-01-20 18:32:58 +08:00
    找3张方格纸,其中2张贴一起随意扣掉一些洞,然后一人一张。盖在第3张纸上,在空格处填入你要写的字。然后拿下来,人工补全整张纸。传给小伙伴,他把纸盖上去就看懂了。然后只有手持这2个key的你们可以看懂,不怕中间人。
    carlhan
        90
    carlhan  
       2014-01-20 19:40:09 +08:00
    @JoyNeop 不见得就V2EX没改吧

    http://www.zhihu.com/people/joyneop

    话说,我怎么这么事儿。。。
    JoyNeop
        91
    JoyNeop  
    OP
       2014-01-20 20:04:26 +08:00
    @carlhan 现在还剩哪里没改吗…… =。=
    tangzx
        92
    tangzx  
       2014-01-20 22:35:58 +08:00 via iPhone
    够了,那些奚落楼主太认真找不到女朋友的同学!你们没发现楼主是要给男朋友传纸条么,,,
    tangzx
        93
    tangzx  
       2014-01-20 22:37:27 +08:00 via iPhone
    @acgism
    @Jason_C
    @manhere 够了,那些奚落楼主太认真找不到女朋友的同学!你们没发现楼主是要给男朋友传纸条么,,,
    goojia
        94
    goojia  
       2014-01-20 23:38:44 +08:00
    @mozutaba 这个方法赞,书写容易阅读容易。
    terry0824
        95
    terry0824  
       2014-01-21 05:57:57 +08:00
    @Ever 哈哈这个方法我也用过。红外还可以隔着走道传,对准了就行
    DavidL
        96
    DavidL  
       2014-01-21 11:06:00 +08:00
    @mozutaba 赞!
    zheitang
        97
    zheitang  
       2014-01-22 10:51:24 +08:00
    題註,侞淉伱褦看嘚懂這段呅牸,涐罙罙哋建議您甪吙煋呅,佬師絕対看卟懂。榊馬亽肉 RSA 啥の嘟媞浮雲。

    http://www.zhihu.com/question/22558998
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3146 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 13:38 · PVG 21:38 · LAX 05:38 · JFK 08:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.