KAKLAB如何实现文件的永久存储?
KAKLAB是一个致力于实现一个更加公平、安全、高性能、可扩展性和通用性的区块链基础设施,专注服务于数字内容与文化市场。KAKLAB的完整技术实现分为两个阶段,第一阶段实现分布式文件存储系统KAK File,第二阶段实现链上协议&智能合约开发平台KAK Protocol。当第一阶段实现后,KAKLAB可以通过开放接口与任何区块链系统、智能合约和应用层软件进行数据交互,提供全方位的数字内容存储永久存储;第二阶段实现后,KAKLAB将具备智能合约功能,实现多种NFT相关协议、资产跨链转移、Dapp开发等。
KAK Flie主要依靠IPFS作为底层技术,加上KAK作为节点激励机制来实现文件数据的永久存储。
和IPFS一样,KAKLAB基于内容而不是基于地址的寻址方式存储和检索文件,这个内容是一个长字符串的哈希值,它是KAK FILE中哈希函数给每个存储文件生成的一个唯一标记,同时通过这种方式避免相同内容文件的重复存储。
当我们索取一个文件:我们只需要问KAK File“谁拥有这个文件”,然后系统中存储了这份文件的节点将提供这份文件。
如果想验证拿到的文件是不是我们需要的,文件是否损坏:只需要把我们所获得的文件的哈希值和我们向KAK File请求的哈希值进行比较就能方便地判断。如果哈希值一样,那我们拿到的就是正确且完整的文件。
为了保证节点在规定的时间内完整的存储了客户的文件,KAKLAB通过KAK实现激励和惩罚措施。节点需要首先缴纳保证金,在履行完存储义务后,获得奖励并退还保证金。
在KAK File中节点将获得以下奖励:
(1)存储奖励:质押KAK成为存储服务商,并在在特定时间内为客户提供存储空间获得存储奖励,该奖励由客户提供;
(2)出块奖励:存储服务商通过竞争成为验证人,通过打包区块获得出块奖励和手续费奖励。
在触发以下规则时将受到罚没保证金,甚至清空算力的惩罚:
(1)共识攻击:获得出块资格的验证人节点没有按照共识机制所要求的形式生成新的区块,将被视作网络攻击行为;
(2)未能提交存储证明:如果某存储服务商节点一个提交周期内未提交文件存储证明,会按照节点离线的时间扣除保证金;
(3)提交的存储证明出错:当一个存储服务商节点发生磁盘损坏或者数据丢失时,应设法进行数据恢复,如果节点提交的证明与客户源文件哈希值发生偏差,并且没有在规定时间内进行数据恢复,将会扣除保证金。
KAKLAB如何实现文件的永久存储?相关推荐
- python永久保存数据_Python学习笔记(四)——文件永久存储
文件的永久存储 pickle模块的使用 pickle的实质就是将数据对象以二进制的形式存储 存储数据 pickle.dump(data,file) data表示想要存储的数据元素,file表示要将数据 ...
- iOS开发者有价值的工具集
2019独角兽企业重金招聘Python工程师标准>>> 原文出处: medium 译文出处:cocochina 我一直比较推崇聪明地工作要远胜于刻苦地工作.使用正确的工具可以帮你 ...
- 服务器接收消息写日志,在Ubuntu 18.04上配置Rsyslog集中式日志服务器的方法
本文介绍在Ubuntu 18.04操作系统上配置Rsyslog集中式日志服务器的方法. 前言 登录任何Linux系统对于分析和排除与系统和应用程序相关的任何问题至关重要,借助Graylog等工具(参考 ...
- 32款iOS开发插件和工具介绍[效率]
插件和工具介绍内容均收集于网络,太多了就不一一注明了,在此谢过! 1.Charles 为了调试与server端的网络通讯协议.经常须要截取网络封包来分析. Charles通过将自己设置成系统的网络訪问 ...
- ASP.NET Core缓存静态资源
背景 缓存样式表,JavaScript或图像文件等静态资源可以提高您网站的性能.在客户端,总是从缓存中加载一个静态文件,这样可以减少对服务器的请求数量,从而减少获取页面及其资源的时间.在服务器端,由于 ...
- [转载] Python连接MySQL、Mongodb、SQLite
参考链接: 使用PyMongo将MongoDB与Python集成 存储方式不同 关系型数据库:以文件方式永久存储到磁盘,如MySQL 非关系型数据库:存储在内存,访问速度很快,通常用来做队列,缓存之类 ...
- iOS生产力之小工具合集
初识iOS平台已几月有余,作为一个从windows平台转型过来的开发者,曾经有人在微博煞有介事问我转型体验如何? 我想除了全新的平台.开发语言所带更多的挑战和新鲜感,如果能够在不断磨练技能中日益精进做 ...
- C语言题目代码总结解析
目录 简单版三子棋实现 简单的扫雷的实现 简单的通讯录实现 最大公约数----辗转相除法 判断一个数是否是素数 二分查找----有序数组查找 递归实现字符串反转 递归实现汉诺塔问题 青蛙跳台阶问题 几 ...
- 孙宇晨再落一子,APENFT和WINkLink要携手布局GameFi了?
从基础生态到应用场景,NFT(非同质化代币)已掀起全面战事,如同"寒武纪大爆发"催生出各式各样的应用.放眼当下,不止加密艺术,破圈进击中的NFT又掀起了游戏热潮,与几年前链游不同, ...
最新文章
- 论机器学习的正确学习姿势
- Java通过Executors提供四种线程池
- 一步一步搭建客服系统 (7) 多人共享的电子白板、画板
- Shell expr的用法 bc 命令 let命令
- 使用Maven在jar中包含依赖项
- 070 random模块的使用
- Hackintosh 黑苹果安装 基于Thinkpad x201(i5-560M,集显) Legacy Boot Mode安装macOS 10.14 Mojave
- wso2_使用WSO2开发
- 双线路接入(双网卡)
- Java日志框架的使用
- 浙江大学计算机学院的软件工程和软件学院的软件工程哪个好,关于举办计算机技术和软件工程硕士复习班的通知-硕士招生-浙江大学计算机科学与技术学院中文站...
- JustSoSo复现
- 2012意大利之行3:罗马的路和车
- 【汇编】汇编中的函数
- Apache Ant安装及使用
- 计算机基础:调整显示器分辨率及刷新率
- 织梦配置多个mysql_织梦教程:DEDECMS中MYSQL修复表的两个小技巧
- 【证券相关】终值和现值
- 英语长语法难句——状语和状语从句
- C++ 类型转换(static_cast、dynamic_cast、reinterpret_cast、const_cast)