Hi 游客

更多精彩,请登录!

BitMere 区块链技术 第 4 页
  • SHA256实现解析(不涉及数学原理)

    1.SHA简介 关于SHA的定义直接参考wiki介绍: 安全散列算法(英语:Secure Hash Algorithm,缩写为SHA)是一个密码散列函数家族,是FIPS所认证的安全散列算法。能计算出一个数字消息所对应到的,长度固定的字符串(又称消息摘要)的算法。且若输入的消息不同,它们对应到不同字符串的机率很高。 SHA可看作是是一种单向函数,几乎不可逆,给一段信息,它会给你生成固定长度的摘要,当然,不同的信息是的确有可能生成相同的摘要的,这被称作碰撞,简单来说,摘要的长度越长,碰撞几率越低。 既然有碰撞这种 ... 阅读全文
    李悔之2015
    2023-1-11 11:31
    区块链技术
    支持
    反对
    回复
    收藏
  • 想用Wasm开发dApp 入门教程

    新建合约 Created library `helloworld` package 新建的合约目录结构如下: ├── Cargo.toml └── src └── lib.rs 一个 Rust 版本的 Wasm 合约包含两部分组成,一部分是Cargo.toml配置文件,用于配置项目信息,一部分是src/lib.rs用于编写合约逻辑。 引入Ontology Wasm合约开发工具库 在生成的Cargo.toml文件中引入 Ontology Wasm 合约开发工具库ontio-std,使用[dependencies]配置项来完成引入该工具库的动作。 name = "helloworld" version = "0.1.0" authors = ["Lucas "] ed ... 阅读全文
    星火车品
    2023-1-10 18:20
    区块链技术
    支持
    反对
    回复
    收藏
  • Vite安全算法相关技术选型

    首发 新窗
    1 数字签名算法 - Ed25519 一、背景 数字签名的目的是创造和我们合同上签字一样的不可抵赖性,其核心属性是:通过签名的消息可以明确知道其发起人,因为只有唯一的签名者的私钥才能计算出有效的签名,这也就意味着该消息确实是签名方生成的,这种证明在一些国家具有法律上的意义,比如美国的电子签名法案,德国的签名法等。 私钥签名,然后公布公钥、消息和签名数据让大家去验证,在这些步骤中公私钥对扮演着最重要的角色,它们总是成对出现,而且就像量子纠缠一样互不分离。公私钥一般是通过一个特 ... 阅读全文
    123458224
    2023-1-10 04:23
    区块链技术
    支持
    反对
    回复
    收藏
  • 使用shuttle实现bytom上跨链资产交换

    首发 新窗
    最近基于比原链上的不同资产交换工具shuttle非常抢眼,因为该工具不仅可以实现同一条链上的不同资产进行交换,还可以实现不同区块链平台上的多种资产进行交换。该工具奠定了资产在交易的过程中完全去中心化,无第三方介入,保证了资产在交换过程中的安全性和原子性。那我们来看一下这个工具到底如何使用! 该工具主要的功能是实现不同资产在比原链上交换,首先是在比原链上不同资产进行交换。这个主要使用币币交换合约来进行资产的交换。如果是在比原的主侧链上进行跨链资产交换,则使用的是哈希时间锁合 ... 阅读全文
    蕙质兰心283
    2023-1-10 02:30
    区块链技术
    支持
    反对
    回复
    收藏
  • 听说Python的广告刷爆了你的朋友圈

    02 DynamicAppCall 使用方法 使用 DynamicAppCall 函数前需要将其引入。这可以通过下面的语句实现: from ontology.interop.System.App import DynamicAppCall 2.1 DynamicAppCall API DynamicAppCall API 有三个参数,分别对应被调用合约的哈希反序,被调用合约方法和被调用方法所需要的参数。我们准备两个智能合约,合约 A 与合约 B。接下来我们通过合约 A 来动态调用合约 B 的功能函数。 合约 A 的代码如下: 特别注意:获取合约 B 的合约哈希后,需要将其反序后再作为调用合约 A 时的参数传入。 from ... 阅读全文
    zmhg799417
    2023-1-10 00:02
    区块链技术
    支持
    反对
    回复
    收藏
  • 足球竞猜智能合约源代码

    业务需求 [*]参赛球队一经设定不可改变,整个活动结束后无法投票; [*]全⺠均可参与,无权限控制; [*]每次投票为 1 ether,且只能选择一支球队; [*]每个人可以投注多次; [*]仅管理员公布最终结果,完成奖金分配,开奖后逻辑: [*]winner 共享整个奖金池(一部分是自己的本金,一部分是利润); [*]winner 需自行领取奖金(因为有手续费); [*]下一期自行开始 ... 阅读全文
    仙翁童子子os
    2023-1-9 20:05
    区块链技术
    支持
    反对
    回复
    收藏
  • Python跨合约静态调用是如何实现的?

    01 导语 上一期我们介绍了合约升级 API,讲述了如何销毁和迁移智能合约。本期我们讨论如何跨合约静态调用。API 只有一个,用法如下: 下面我们具体讲述一下这个 API 的使用方法。在这之前,小伙伴们可以在本体智能合约开发工具 SmartX 中新建一个合约,跟着我们进行操作。同样,在文章中我们将给出这次讲解的所有源代码以及视频讲解。 02 RegisterAppCall 使用方法 使用 RegisterAppCall 函数前同样需要引入,可以通过下面的语句实现: from ontology.interop.System.App import RegisterAppCall Regis ... 阅读全文
    蓝天天使2017
    2023-1-9 18:09
    区块链技术
    支持
    反对
    回复
    收藏
  • Ubuntu 16.04 快速搭建以太坊私有链开发环境

    1.安装go语言环境 (1)下载linux下go的安装包 $ wget https://studygolang.com/dl/golang/go1.10.3.linux-amd64.tar.gz (2)下载完后,进入到下载目录,将其解压到 /usr/local 文件夹下并在$HOME下新建一个文件夹go: $ sudo tar -C /usr/local -xzf go1.10.3.linux-amd64.tar.gz $ mkdir go (3)配置环境变量 使用如下命令打开环境变量配置文件 $ sudo vim ~/.bashrc 将下列代码复制粘贴到文件最后,wq命令保存退出 export GOROOT=/usr/local/go export GOBIN=$GOROOT/bin export GOPATH=$HOME/go expo ... 阅读全文
    945坏男人
    2023-1-9 17:19
    区块链技术
    支持
    反对
    回复
    收藏
  • P2SH-为比特币赋能的脚本

    P2SH即Pay to Script Key Hash,最常见的应用是多重签名,N把公钥,M人签名时才能花费这笔交易(M P2PK 比特币早期中本聪时期是P2PK(pay to public key)这种输出形式的,最早是直接放入一把公钥进去了,还是未压缩的,感受一下: 04678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5f OP_CHECKSIG 0x04开头,表示是未压缩的0x04后面紧接这的是64字节是公钥内容OP_CHECKSIG:操作码,用于花费的时执行验证签名 那么验证 ... 阅读全文
    哈哈笑417
    2023-1-9 15:55
    区块链技术
    支持
    反对
    回复
    收藏
  • Python智能合约教程之合约升级

    01 导语 在上一期的技术视点中,我们介绍了合约原生 API,讲述了如何利用智能合约进行ONT / ONG 转账。本期我们将讨论如何通过 Upgrade API 来进行合约升级。合约升级共有2个 API,分别为 Destroy 和 Migrate。其用法如下: 下面我们具体讲述一下这两个 API 的使用方法。在这之前,小伙伴们可以在本体智能合约开发工具 SmartX 中新建一个合约,跟着我们进行操作。跟以前的 API 讲解一样,在文章最后我们将给出这次讲解的视频示例。 02 Upgrade API 使用方法 使用这两个函数前需要引入。下面两条语句分别 ... 阅读全文
    zmhg799417
    2023-1-9 15:06
    区块链技术
    支持
    反对
    回复
    收藏
  • Python智能合约教程之原生合约调用

    01 导语 上一期我们介绍了本体 Python 智能合约的合约执行 API,本期我们将讨论如何通过 Native API 来进行本体原生合约调用。原生合约调用最典型的功能就是合约转账,这也是整个智能合约最核心的部分。Native API 只有1个 API。用法如下: 同时,使用 Invoke 函数需要内建的 state 函数辅助来封装参数,用法如下: 下面我们具体讲述一下这两个 API 的使用方法。在这之前,小伙伴们可以在本体智能合约开发工具 SmartX 中新建一个合约,跟着我们进行操作。跟以前的API讲解一样,在文章最后我们将给出这次讲 ... 阅读全文
    放弃六月们
    2023-1-9 14:16
    区块链技术
    支持
    反对
    回复
    收藏
  • 500行代码了解Vite基本设计

    此文来源于Vite技术哥哥——viteshan 资深互联网开发工程师,多年系统架构设计经验,所搭建系统支撑过1000万日订单的并发处理量。18年6月加入Vite,目前负责共识的开发。 1简介 从白皮书了解到,vite的核心账本结构是DAG,DAG中存储了每个用户的每笔交易信息。 为了提高整个DAG账本的数据安全性,vite首创提出了快照链,使用快照链进一步保障DAG的不可篡改性。 白皮书描述的账本结构比较抽象,本文通过简单的500行代码来实现vite中DAG的账本结构以及快照链。 2核心概念 1、Vite中DAG账本结构 vite在设计 ... 阅读全文
    华胥
    2023-1-9 12:01
    区块链技术
    支持
    反对
    回复
    收藏
  • Python智能合约执行API知多少?

    首发 新窗
    01 导语 上一期我们介绍了本体智能合约存储 API,相信很多小伙伴都明白了在本体上进行 Python 智能合约开发时如何调用相关 API 进行持久化存储。本期我们讨论如何使用 Runtime API(合约执行 API)。Runtime API 共有8个相关的 API,提供了合约执行时常用的接口,帮助开发者获取数据、转换数据以及验证数据。这8个 API 的简单描述如下: 下面我们具体讲述一下这8个 API 的使用方法。在这之前,小伙伴们可以在本体智能合约开发工具 SmartX 中新建一个合约,跟着我们进行操作。同样,在文章最后我们将给出 ... 阅读全文
    wk国际特价机票
    2023-1-9 11:30
    区块链技术
    支持
    反对
    回复
    收藏
  • Python智能合约开发教程

    01 导语 上一期我们正式开始了本体智能合约语法部分,讲述了 Blockchain & Block API 的用法。相信有很多小伙伴已经开始动手尝试用 Python 在本体上编写和运行智能合约。如果小伙伴们在使用 SmartX 过程和动手实践过程中遇到问题,欢迎联系我们。 本期我们讨论如何使用第二个模块:Storage API (存储 API)。Storage API 共有五个相关的 API,实现了对区块链智能合约中持久化存储的增删改查。这五个 API 的简单描述如下: 下面我们具体讲述一下这五个 API 的使用方法。在这之前,小伙伴们可以在本体智能 ... 阅读全文
    卡哇伊嘉人
    2023-1-9 09:46
    区块链技术
    支持
    反对
    回复
    收藏
  • 理解比特币脚本

    首发 新窗
    其实我们可以这样看待比特币的交易:『交易的发起者悬赏若干比特币,在网络上贴出了一到数学题,谁解出了这道数学题,悬赏就归谁了』。 顺着这个思路,Alice对Bob的转账可以理解为『Alice把一道只有Bob才能解开的数学题发到网络上,Bob解出题并拿走了悬赏』。那么,每个交易数据中都会出现的『脚本』就是题和解,『脚本语言』就是用来描述题和解的工具。 『输入脚本』和『输出脚本』 在这里我们先讨论单输入单输出的比特币交易,因为这样描述起来更方便且不影响对『脚本』的理解。 9c50cee8d50e273100987 ... 阅读全文
    一无所有977
    2023-1-9 07:03
    区块链技术
    支持
    反对
    回复
    收藏
  • Python智能合约开发?看这一篇就够了

    首发 新窗
    01 前言 在之前的技术视点文章中,我们介绍了目前本体主网支持的智能合约体系以及相应的智能合约开发工具 SmartX。很多小伙伴都想上手练一练。在本期的本体技术视点中,我们将正式开始讲述智能合约语法部分。 本体的智能合约 API 分为7个模块,分别是 Blockchain & Block API、Runtime API、Storage API、Native API、Upgrade API、Execution Engine API 以及 Static & Dynamic Call API。本期我们将介绍 Blockchain & Block API,这是本体智能合约体系中最基础的部分。其中,Blockchain API 支持基本的 ... 阅读全文
    黄河347
    2023-1-9 03:05
    区块链技术
    支持
    反对
    回复
    收藏
  • 手把手教你Wasm合约开发(C++篇)

    Ontology Wasm 自从上线测试网以来便受到了社区开发人员的极大关注。 Wasm 的上线将使得业务逻辑复杂的 dApp 合约上链成本降低,极大丰富 dApp 生态。在进行 Wasm 合约开发时,开发者不仅可以使用 Rust,还可以使用 C++ 作为合约开发语言。本期我们将通过两个简单的示例来示范如何使用 C++ 进行Wasm 合约开发。 一、Hello World 按照惯例,我们还是从一个 Hello world 开始 #include#include using namespace ontio;class hello:public contract { public: using contract::contract: void sayHello(){ p ... 阅读全文
    放弃六月们
    2023-1-9 00:14
    区块链技术
    支持
    反对
    回复
    收藏
  • 手把手教你搭建Facebook区块链Libra的开发环境

    首发 新窗
    脸书在发布了区块链新应用Libra之后,又发布了Libra的编程语言Move,可能是刚刚发布笔者尝试在ubantu系统下安装Move语言的开发环境,可能是发布时间太短,笔者还是遇到了很多坑的。这里用博客记录一下相关的历程 安装Move项目开发环境 1.打开https://developers.libra.org/docs/my-first-transaction网站,并使用git命令克隆项目 git clone https://github.com/libra/libra.git 2.配置yum源 使用以下命令,配置yum源 sudo gedit fedora-163.repo sudo gedit fedora-updates-163.repo 其中fedora-163.re ... 阅读全文
    123458254
    2023-1-8 10:01
    区块链技术
    支持
    反对
    回复
    收藏
  • 匿名加密货币的技术哪家强?

    本文宗旨在于简要概述当今主流加密货币中实施的匿名机制 区块链匿名是一个特别困难的事情,因为公共区块链的设计使得所有的交易都是透明的,加密货币的供应可以被公开验证。即使在保护隐私和维护公共可验证性之间存在冲突,匿名机制也必须确保这两个要素得以保留。 要了解Sigma和Lelantus背后的创新,我们需要研究区块链匿名技术的历史。 1.资金池混币和混币器混币 用于:达世币Dash,比特币混币器 优点: ·不需要特定的共识就可以在大多数加密货币上运行 ·实施起来相对简单 ·轻量化 缺点: ·只能提 ... 阅读全文
    一夜雨十年灯潞
    2023-1-8 07:49
    区块链技术
    支持
    反对
    回复
    收藏
  • Schnorr签名方案和BLS签名方案的全面对比

    首发 新窗
    Schnorr签名算法最初是由德国密码学家Claus Schnorr于2008年提出的,而来自区块链协议公司Blockstream的密码学家Gregory Maxwell、Pieter Wuille等人,则在2018年提出了一种名为MuSig的Schnorr签名方案,这也是我们即将探索的签名方案。而BLS签名方案,最初是由斯坦福大学教授Dan Boneh等人于2001年便提出的一种方案,目前则在Boneh教授等人的完善下,变得更适用于区块链。 总的来说,两大签名方案各有千秋,它们在不同的场景下都有各自的优势。 以下内容译自量子物理学家Stepan的两篇科普文章(part1 ... 阅读全文
    123458275
    2023-1-8 06:06
    区块链技术
    支持
    反对
    回复
    收藏
区块链技术
区块链技术 今日排名:17
  • 关注

    4

  • 主题

    445

  • 帖子

    454

池塘之星
最关注文章