V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lococo
V2EX  ›  自言自语

论文要挂了!天啊!求指导!

  •  
  •   lococo · 2014-03-25 21:42:45 +08:00 · 377 次点击
    这是一个创建于 3896 天前的主题,其中的信息可能已经有所发展或是发生改变。
    请君听我细细道来:

    [背景]
    现在有两个Table,一个是data tabel 一个是audit table
    data table中装有很多有用的数据,而audit table负责对data table的完整性进行校验

    现在假设audit table是不完全安全的(即可以保证有个别数据未被篡改)
    那么现在有个hash chain的办法去验证data table中数据的完整性,如下所示

    data table audit table
    row1 hash(row1)
    row2 hash(row2 + hash(row1))
    row3 hash(row3 + hash(ROW2)) //这里用hash(ROW2)代表上一行的hash值
    ···
    rowN hash(rowN + hash(ROWN-1))//这里用hash(ROWN-1)代表上一行的hash值

    也就是说我们只用确保最后一个hash值是安全的(没有被篡改)那么整个hash chain基本就可以判断是安全的

    验证的时候,我们只需要一条一条的做比对,则能检验出 data table中数据的完整性

    [问题]
    当data table中的数据太多的时候,一条条的比对的效率太低,是否有什么更好的方法使得数据完整性的检验效率能够提高?

    [想法]
    其实考虑了这么久,整个问题的核心就在于 [如何在确保安全性的同时减少IO次数]

    首先,data table里的数据是肯定要遍历的,所以这里的IO没办法做手脚,
    那么注意力自然而然就会转移到audit table那里

    最容易想到的其实就是 hash(row1+row2+···+rowi)这样可以减小audit table的访问次数,但这样io次数无非是从3N次减小到了 N/i 次。
    而且如果就这样就解决了,那毕业论文实在太扯淡了 ···

    所以到现在来说都没有什么突破性的想法实在捉急
    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1046 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 19:32 · PVG 03:32 · LAX 11:32 · JFK 14:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.