1
SoloCompany 2015-04-01 03:13:02 +08:00 via iPad
只要算法是公开,就容易证明没可能,这也是公私钥系统存在的必要性所在,如果你的算法对时间敏感,打个比方,互联网有个时钟种子发生器生成不可篡改的时间戳,那只不过是然这个后面的时钟发生器系统成为另一种ca签名机制而已,你完全可以简单设计算法
签名= 内容发布时间+sign(发布时间,内容md5,时间系统私钥) 关键是,时间系统的私钥没有任何人掌握,要有一个ca中心负责签名而已 只不过是把gpg的个人私钥换成一个ca系统的私钥而已,毫无差别 |
2
SoloCompany 2015-04-01 03:15:56 +08:00 via iPad
真正去中心化的,参考各种虚拟货币系统是怎么设计就好了
|
3
jybox 2015-04-01 07:45:17 +08:00 1
这个问题的关键是「时间」是独立于计算机世界之外的一个变量,必须要由外部来定义时间。
简而言之有两种方案,一种是使用一些机构提供的时间证明服务,即你发给它一段数据,它用数字签名签上当时的时间。一般靠谱的机构都是收钱的,不收钱的通常不是很靠谱,国内的比如 http://www.tsa.cn/ 另一种方案是就是把这段数据嵌入到一个链状的 P2P 网络中,比如比特币网络,我有写过一篇日志来讨论这个话题: https://jysperm.me/2013/12/1443/ |
4
jybox 2015-04-01 07:50:06 +08:00
我上面的日志是一年多以前写的,刚刚发现似乎已经有很多人把这个过程自动化了,比如 https://www.btproof.com/
|
6
HowardMei OP @SoloCompany 算法公开的是没错,我在幻想有一种活的算法,即便公开了,但因为它本身是时变的,所以不需要root ca xD
@jybox 日志写得不错,挺清楚,但它利用了Bitcoin Blockchain,需要Proof of work,而且交易的时效性不佳,作为电子合同来讲聊甚于无 @cfan8 比特币本身的交易合同不是按时间锁定的,而是按工作量扩散锁定,时间精度不够 |
7
SoloCompany 2015-04-01 17:11:43 +08:00
|