• app_navCreated with Sketch.app_navCreated with Sketch.

    App

    扫码下载APP

  • tougao_navCreated with Sketch.tougao_navCreated with Sketch.

    投稿

  • Sign in_navCreated with Sketch.Sign in_navCreated with Sketch.

    登录

  • register_navCreated with Sketch.register_navCreated with Sketch.

    注册

区块链技术可以保护个人隐私吗?如何实现?
2018-04-19 17:06:05

区块链技术可以保护隐私吗?个人隐私信息泄露在中国是一个非常严重的现象。盗取、贩卖个人信息已经有完整的黑市产业链,部分互联网征信和数据公司,从黑市上购买数据,甚至雇佣黑客盗取数据。互联网用户普遍意识到个人隐私信息的重要,对隐私保护的要求会更高。程序员有责任从技术上加强个人隐私的保护。

在传统的应用架构设计中,隐私保护或者安全性设计的优先级并不是很高,现在这种情况必须有所改变,架构师需要提升隐私保护设计的优先级。

区块链应用领域采用了很多密码学的技术,例如哈希算法、加密算法、公钥密码学、默克尔树、和零身份证明。

Bitcoin在保护用户身份方面,使用哈希过的公钥作为个人账号,这样在交易时隐藏了个人信息。另外,个人账号可以设计成一次性的,每次交易都使用新账号,这样就很难通过追踪某个账号的交易来推测用户身份。Bitcoin的总帐是公开的,上面每笔交易记录包含付费账号、收费账号以及转账金额。

如果觉得这样的隐私保护还不够,另一个数字货币Zcash在Bitcoin之上增加了一些协议,将付费账号、收费账号以及转账金额都隐藏了起来,采用的方法仍然是加密、哈希、默克尔树和零知识证明。

尽管比特币出自于一群无政府主义者之手,但他们秉承的一些诸如保护个人隐私的信念,在这个信息泛滥的互联网时代还是非常可取的。

你的应用是否收集了超越应用需要的个人信息?(保护隐私的最好办法就是不收集它们)在处理交易时,是否可以传递尽可能少的个人身份信息?或者使用一次性账号?在日志中是否可以记录尽可能少的个人身份信息?或者完全不需记录?缓存数据库中的个人信息是否安全?消息传递时不仅采用Session Key加密,是否还可以采用Message Key?如今,哈希算法、公钥加密,默克尔树,这些加密技术唾手可得。程序员应该养成新的习惯,在应用设计中采用各种加密技术保护个人隐私信息,包括个人账户、交易、浏览、日志信息等。