蚂蚁区块链第20课 可信存证司法链从入门到实施
1. 摘要
杭州互联网法院和司法区块链平台的技术建设方都是蚂蚁金服区块链。那么,如何借助蚂蚁的技术能力和服务能力,快速对接上司法链,便于后续打通存证/维权的闭环流程。本文介绍蚂蚁区块链可信存证的业务及特点,费用及接入方法等,具有实战指导意义。
2. 蚂蚁区块链可信存证的介绍
蚂蚁区块链可信存证具备全链路可信,司法权威节点见证,安全隐私保护,一站式接入能力,全国首家法律认可的区块链存证平台。
2.1 蚂蚁区块链可信存证的4大优势
司法权威节点见证
用户数据采用分布式账本保存,由联盟节点包括钱塘公证处、上海市计算机行业协会司法鉴定所、杭州互联网法院等权威节点共同见证。
真实保障不可篡改
平台采用完全分布式架构,对用户数据加密。计算和交互均在加密后数据的多个计算节点之间独立完成,无中心控制节点,真实保障数据不可篡改。
安全合规隐私保护
保证数据最小化利用,所有计算均在加密或脱敏之后进行,最大程度地保障了个人隐私数据安全。
一站式接入
用户可以通过丰富的 API 以及 SDK 进行一站式接入,享受平台提供的全流程存证、出证服务。
2.2 蚂蚁区块链可信存证的5大应用场景
数字作品登记场景
互联网时代信息传播快、范围广,在没有预先登记的情况下,数字作品被侵权的概率很大,并且维权成本很高。对此,蚂蚁区块链可信存证提供了针对数字作品,包括图片、视频、音频、文字、代码等数字作品的所有权登记服务,让原创作品快速生成司法认可的电子数据存证证明,保护数字作品版权。
服务须知存证场景
互联网服务行业大量纠纷在于平台和商家是否就服务限制性条件提前明确告知用户,包括限制性条件、使用范围、服务协议、隐私保护条款等。对此,蚂蚁区块链可信存证提供了具备可信时间戳,公正中立,司法认可的服务须知存证服务,帮助平台、商家和用户维护自身合法权益。
电子凭证存证场景
电子证明、交易凭证、电子合同、电子票据等数字凭证存在不易管理、容易遗失、较难流通、难以验真等缺陷。对此,蚂蚁区块链可信存证可以为用户的电子凭证提供永久性存证、验真服务,不仅方便用户管理电子凭证,更让用户的电子凭证易于流通。
在线交易存证场景
网络购物和交易行为存在大量的细节性数据,随着时间的推移这些数据容易遗失,当产生纠纷时就很难串接起来。对此,蚂蚁区块链可信存证为用户的在线交易提供公正客观、司法认可的存证服务,为用户的线上数据行为提供双保险。
侵权维权存证场景
当用户的合法权益受到侵犯时,蚂蚁区块链可信存证可以为用户提供侵权证据的存证服务,如侵权网站的服务条款、服务内容、交易价格、客服沟通记录等,确保用户维权时的举证能力。
辉哥个人理解,这些业务的场景很多企业都可以做,但是只有蚂蚁完成了司法链的建设,它具有垄断式的资源优势。具体toB的业务应用可以由各个平台来完成,数据上司法链交给蚂蚁来接口完成,比较切合实际。
3. 开通及计费规则
很多toB类的业务,规则比较繁杂或者故意设置成需要人工介入,强资源兑现的模式,不大满足现在的市场需求。蚂蚁在可信存证业务推广上秉承阿里家“开放,简单”的原则,还是比较人性化的。
3.1 开通
登录蚂蚁区块链可信存证(https://tech.antfin.com/products/TWC)平台,完成企业注册和实名认证后,即可根据业务场景开通可信存证服务。
对应的场景有合同,版权,金融,租赁和司法这五类。)
3.2 计费规则
虽然是可信存证的计费方式是一种先使用次日结算后付费的计费方式,但要求其资金账户余额大于1万元人民币,有点保证金的意思。
具体的价格参考(这个价格差异很大,跟实际的不符):
分类 | 计费说明 |
---|---|
合同类存证 | 每一次成功调用为一次有效次数。费用 0.012 元/次。 |
版权类存证 | 每一次成功调用为一次有效次数。费用 0.15 元/次。 |
金融类存证 | 每一次成功调用为一次有效次数。费用 1.2 元/次。 |
租赁类存证 | 费用待明确。 |
司法类存证 | 费用待明确。 |
实际是采用推荐资源包的方式,具体链接为 https://product.cloud.alipay.com/common-buy?productCode=TWCBAG&tenantName=VVRMJTRY
最便宜的一个年套餐,折算为0.004元/次存证。
4. 使用入门实例及API接口
4.1 快速开始
完成一次存证需要以下步骤:
- 创建存证事务:存证事务由一个全局唯一的ID作为凭证,供固定的存证人/公司多次使用。每次发起存证前,您可以选择发起一个新的存证事务ID,也可以将一组相关联的证据存放在一个存证事务中,这取决于您的业务需要。
- 发起存证:根据您的存证类型不同,还选择发起 文本存证 、文件存证 、原文存证 等不同类型存证。发起存证时,请制定您在步骤1中申请的存证事务ID。
- 下载存证:您可以通过 下载文本存证 、下载文件存证 、下载原文存证 获取您存证的数据,也可以通过 获取存证事务数据 接口获取指定存证事务中的全部数据。
4.2 可信存证典型接口
通过OpenAPI使用可信存证服务,可参考 可信存证服务OpenAPI,详细文档地址请参考以下OpenAPI介绍。
接口 | 地址 |
---|---|
创建存证事务 | twc.notary.trans.create |
获取事务中所有的存证信息 | twc.notary.trans.get |
创建文本存证(存证内容为文本明文,未做BASE64编码) | twc.notary.text.create |
获取文本存证内容 | twc.notary.text.get |
创建文件内容存证(文本内容的BASE64编码或者文本内容HASH) | twc.notary.file.create |
获取文件存证 | twc.notary.file.get |
创建原文内容存证 (存证文件内容的BASE64编码) | twc.notary.source.create |
获取原文存证 | twc.notary.source.get |
针对租赁,合同和金融行业的客户,蚂蚁还提供了一些专有接口,便于跟司法流程衔接上。具体参考链接:https://apdevcenter.cloud.alipay.com/console/openapi/product/TWC/apis?tenantName=VVRMJTRY
4.3 调用实例
下面提供调用 OpenAPI 时需要添加的依赖,并通过Java示例说明接口调用过程。
<dependencies><dependency><groupId>cn.com.antcloud.api</groupId><artifactId>antcloud-api-twc</artifactId><version>1.1.15</version></dependency><dependency><groupId>cn.com.antcloud.api</groupId><artifactId>antcloud-api-sdk</artifactId><version>3.2.6</version></dependency>
</dependencies>
请参考以下代码示例,完成存证事务创建的接口调用:
import cn.com.antcloud.api.AntFinTechApiClient;
import cn.com.antcloud.api.AntFinTechProfile;
import cn.com.antcloud.api.twc.v1_0_0.model.Identity;
import cn.com.antcloud.api.twc.v1_0_0.model.Location;
import cn.com.antcloud.api.twc.v1_0_0.request.*;
import cn.com.antcloud.api.twc.v1_0_0.response.*;
import java.util.*;public class Demo {public static void main(String[] args) throws InterruptedException{// 实例ID配置,正式环境请更换为notary-api-prodString productInstanceId = "notary-api-test";// 初始化客户端AntFinTechProfile profile = AntFinTechProfile.getProfile("https://prodapigw.cloud.alipay.com","<your-access-key>","<your-access-secret>");AntFinTechApiClient client = new AntFinTechApiClient(profile);// 构建请求CreateTransRequest createTransRequest = new CreateTransRequest();Identity customer = new Identity();customer.setCertName("小王");customer.setCertType("IDENTITY_CARD");// 测试时请替换为真实身份证号码customer.setCertNo("100101199001010112");customer.setMobileNo("13900010001");customer.setUserType("PERSON");createTransRequest.setCustomer(customer);createTransRequest.setProperties("{\"key\":\"value\"}");createTransRequest.setSubBizId("VIDEO");createTransRequest.setTsr(true);createTransRequest.setProductInstanceId(productInstanceId);CreateTransResponse createTransResponse = client.execute(createTransRequest);System.out.println(createTransResponse.getTransactionId());Location location = new Location();location.setCity("杭州");location.setImei("359426002899056");location.setImsi("460001357924680");location.setIp("0.0.0.0");location.setLatitude("66.33");location.setLongitude("23.26");location.setProperties("{\"key\":\"value\"}");location.setMacAddr("00-01-6C-06-A6-29");// 构建文本存证请求CreateTextRequest createTextRequest = new CreateTextRequest();createTextRequest.setLocation(location);createTextRequest.setNotaryContent("123123");createTextRequest.setPhase("123");createTextRequest.setProperties("key:value");createTextRequest.setTransactionId(createTransResponse.getTransactionId());createTextRequest.setProductInstanceId(productInstanceId);CreateTextResponse createTextResponse = client.execute(createTextRequest);System.out.println(createTextResponse.getTxHash());// 构建文件存证请求CreateFileRequest createFileRequest = new CreateFileRequest();createFileRequest.setLocation(location);String content = Base64.getEncoder().encodeToString("fileContent".getBytes());createFileRequest.setNotaryFile(content);createFileRequest.setNotaryName("testfile.txt");createFileRequest.setPhase("2");createFileRequest.setProperties("{\"key\":\"value\"}");createFileRequest.setTransactionId(createTransResponse.getTransactionId());createFileRequest.setTsr(true);createFileRequest.setProductInstanceId(productInstanceId);CreateFileResponse createFileResponse = client.execute(createFileRequest);System.out.println(createFileResponse.getTxHash());/*构建原文存证请求*/CreateSourceRequest createSourceRequest = new CreateSourceRequest();createSourceRequest.setSourceFile(Base64.getEncoder().encodeToString("test_source".getBytes()));createSourceRequest.setLocation(location);createSourceRequest.setProperties("{\"key\":\"value\"}");createSourceRequest.setSourceDesc("test source");createSourceRequest.setSourceName("testName");createSourceRequest.setPhase("3");createSourceRequest.setTransactionId(createTransResponse.getTransactionId());createSourceRequest.setProductInstanceId(productInstanceId);CreateSourceResponse createSourceResponse = client.execute(createSourceRequest);System.out.println(createSourceResponse.getTxHash());// 等待区块链出块,默认出块频率为2秒/个Thread.sleep(5000);// 构建请求,获取存证事务信息GetTransRequest getTransRequest = new GetTransRequest();getTransRequest.setTransactionId(createTransResponse.getTransactionId());getTransRequest.setProductInstanceId(productInstanceId);GetTransResponse getTransResponse = client.execute(getTransRequest);System.out.println(getTransResponse.getFileUrl());}
}
4.4 杭州互联网法院对接
存证和取证完成后,如果要走司法程序,可以到杭州互联网法院提交诉状,杭州互联网法院地址为:
https://www.netcourt.gov.cn/portal/main/domain/index.htm
打开后进入到互联网法院的首页(以下为杭州互联网法院诉讼平台简单介绍内容,功能和流程介绍仅供参考,以互联网法院官方网站内容为准)
该页面向下滚动有一个诉讼流程的简单介绍,点击下面红框按钮,可以查看法院官方诉讼流程的介绍。
后续根据页面提示操作即可,提交证据的时候需要做HASH验证。
可以参考互联网法院的诉讼规程介绍:https://www.netcourt.gov.cn/portal/main/domain/lassen.htm#lassen/litigationDocuments
5. 参考
(1)杭州互联网法院官网地址
https://www.netcourt.gov.cn/login.htm
(2)蚂蚁区块链可信存证
https://tech.antfin.com/products/TWC
蚂蚁区块链第20课 可信存证司法链从入门到实施相关推荐
- 蚂蚁区块链第10课 可信计算及TEE硬件隐私合约链智能合约开发实践
1,摘要 本文介绍可信计算分类INTEL SGX技术和ARM TRUSTZONE技术技术方案概要,以及应用INTEL SGX技术的蚂蚁区块链TEE硬件隐私链的智能合约开发实践. 2,可信计算和2种技术 ...
- 蚂蚁区块链第11课 以租房积分管理系统为例讲透蚂蚁Solidity语言差异精要
1,摘要 本文以住房租赁积分管理系统为例,给大家演示CLOUD IDE如何编译调试solidity智能合约,并以此为例,给大家分享以太坊SOLIDITY跟蚂蚁区块链SOLIDITY语言的差异点. 2, ...
- 蚂蚁区块链第13课 如何搭建一个DAPP应用(以姓名年龄为例)
1,摘要 本文介绍如何使用Cloud IDE完成name-age智能合约的编译,获取其ABI和二进制码信息. 接着,本文介绍基于EXPRESS框架搭建的前端页面,完成已部署智能合约的调用,完成了相关功 ...
- 蚂蚁区块链第9课 SSL/TLS工作原理及在蚂蚁BAAS中的应用
1,摘要 辉哥在学习蚂蚁BAAS系统时,发现了一堆证书或者公私钥名称,包括trustCa,ca.crt,client.crt,client.key,pub.txt,MyPKCS12.p12等等文件,不 ...
- 蚂蚁区块链第8课 如何创建新的账户,获取私钥和identity标识?
1,摘要 在创建TEE硬件隐私合约链(标准合约链)的时候,配套已经创建了一个证书对和2个公私钥对,对应了这1个账号(duncanwang).不理解辉哥说什么的参考<蚂蚁区块链第4课 如何创建TE ...
- 蚂蚁区块链第22课 蚂蚁区块链溯源服务功能从开通到实现
1. 摘要 本文介绍蚂蚁区块链溯源服务的特点,开通和配置流程,接入淘宝扫码的流程. 辉哥认为,区块链溯源要锚定实物和数字世界的关系,但各个环节又只能在各自平行线操作,很难做到绝对溯源.况且,蚂蚁溯源区 ...
- 蚂蚁区块链第7课 零知识证明隐私保护原理和蚂蚁BAAS接口调用实现
1,摘要 本文试图普及隐私保护和零知识证明的相关技术知识,尝试使用更简单的描述来理解复杂的数学算法和技术原理.同时,也提供了蚂蚁区块链已经实现的隐私保护的接口函数说明. 本文涉及的专业知识有零知识证明 ...
- 蚂蚁区块链第15课 JS SDK概述及API接口速查
1,摘要 本文讲解蚂蚁BAAS的JavaScript SDK概述,说明JS SDK对应的API接口速查.其他语言包SDK参考官网其他章节说明即可. 2,JS SDK 说明 JavaScript SDK ...
- 蚂蚁区块链第18课 区块链预言机(ORACLE)的定义及在蚂蚁BAAS中的使用
1,摘要 本文主要讲解外部预言机ORACLE定义和原理,并讲解蚂蚁BAAS系统如何通过ORACLE预言机方式使用外部数据源的方法. 2,外部预言机ORACLE定义和原理 2.1 预言机(Oracle) ...
最新文章
- Xamarin Essentials教程发送邮件Email
- 异构云:另一个烫手的山芋
- Apache动态编译安装模块mod_rewrite
- 高通平台gpio简单调试
- Leetcode 21:Merge Two Sorted Lists(golang实现合并两条已经排序的链表)
- mongodb如何快速进行版本升级
- 计算机应用基础18春在线作业1答案,东师计算机应用基础-18春在线作业1.docx
- aop 获取注解注释的方法_带有AOP和注释的Java方法记录
- Android代码数字证书,有关Android中读取证书
- oc51--循环retain
- 号外号外,第一届沙雕项目竞赛,这些项目以数万Star惨获提名
- recommend a cool calendar
- FullCalendar应用——整合农历节气和节日
- 看了这个视频都想辞职了
- Access数据库学习
- 税控盘系统参数设置服务器,税控盘设置服务器地址
- Oracle客户端完整版下载地址
- vs2010英文版变中文版
- 笔记本 win10设置wifi热点
- tom 猫 android 版本 设计,一种Tom猫的简单实现
热门文章
- python bytes和bytearray_Python bytes和bytearray
- 如何使用数码相机拍摄夜空
- 微信公众号开发之服务器验证接入
- 音质好的蓝牙耳机推荐,分享四款音质不错的蓝牙耳机
- 提高电脑运行速度---清理内存工具
- linux mysql 运行sql文件命令大全_linux下执行mysql的sql文件
- 计算机毕业设计Java茶叶企业管理系统(源码+系统+mysql数据库+lw文档)
- QT任务009——基于QPainter 类,添加图片+动图(基于QMovie),并随鼠标移动——samp_8_2_test
- 2010南非世界杯电视直播表
- OSChina 周三乱弹 ——复制过去,成就未来