6 月 162018
 

rippled Version 1.0.1

https://ripple.com/dev-blog/rippled-version-1-0-1/

Ripple has released rippled version 1.0.1, which includes fixes for issues identified by Ripple engineers and reported by external security researchers. These issues, when exploited, could cause a rippled instance to restart or, in some circumstances, stop executing.

Ripple已发布rippled的1.0.1版本,其中修复了包括Ripple工程师及外部安全研究人员报告的问题。这些问题在被利用时可能导致rippled实例重启,或是在某些情况下停止运行。

While these issues can result in a denial of service attack, none affect the integrity of the XRP Ledger and no user funds, including XRP, are at risk.

虽然这些问题可能导致DoS攻击,但却不会影响XRP总账网络的完整性以,也不会对包括XRP在内的用户的资金造成风险。

Action Required
应采取的行动

If you operate a rippled server, then you should upgrade to rippled version 1.0.1 as soon as possible.
如果用户运行rippled服务器,应尽快更新rippled至1.0.1版本。

Impact of Not Upgrading
不升级的影响

If you operate a rippled server, but do not upgrade to version 1.0.1 as soon as possible, then your server may experience restarts or outages.
如果用户运行rippled服务器,但是没有尽快更新到1.0.1版本,则服务器可能出现重启或中断服务的情况。

Upgrading
升级

For instructions on updating rippled on supported platforms, see Updating rippled.

The SHA-256 for the RPM is: 4bfa27b0e1e1979f2bc042edb9dd11ae4119dac6be087813dadcc67572877189

The SHA-256 for the source RPM is: 60279abc65476b0a96ddedcd23338ce1c6fb5481ab94fe8b8c856448044e3ebe

For other platforms, please compile v1.0.1 from source. See the rippled source tree for instructions by platform. For instructions building rippled from source on Ubuntu Linux, see Install rippled on Ubuntu.

The first log entry should be the change setting the version:

commit 8429dd67e60ba360da591bfa905b58a35638fda1
Author: Nik Bougalis <nikb@bougalis.net>
Date: Mon Jun 4 16:36:22 2018 -0700

Set version to 1.0.1

Network Update
网络更新
The Ripple operations team plans to deploy version 1.0.1 to all rippled servers under its operational control, including private clusters, starting at 3:00 PM PST on Thursday, 2018-06-14. The deployment is expected to complete within 5 hours. The network should continue to operate during deployment and no outage is expected.

Ripple运营团队计划部署1.0.1版本到其控制下的所有rippled服务器,包括私有集群。时间自2018-06-14星期四,3:00 PM PST开始。预计需要5个小时完成部署。在部署期间网络将持续保持可用且不会出现中断的情形。

Other Information
其他信息
Acknowledgements
致谢

Ripple thanks Guido Vranken for discovering and responsibly disclosing an off-by-one error in the base64 decoder logic when handling malformed input.

Bug Bounties and Responsible Disclosures

Ripple welcomes reviews of the rippled codebase and urges reviewers to responsibly disclose any issues that they may find. For more on Ripple’s Bug Bounty program, please visit https://ripple.com/bug-bounty/.

Boost Compatibility
Boost兼容性

When compiling rippled from source, you must use a compatible version of the Boost library. Ripple recommends Boost 1.64.0 for all platforms.
从源代码编译rippled时,用户必须使用兼容版本的Boost库。Ripple推荐在所有平台都使用Boost 1.64.0版本。

Other compatible versions differ by platform. Boost 1.58.0 is compatible on Linux but not on Windows. On macOS, Boost 1.58.0 is not compatible with the Clang compiler version 4.0+.
其他兼容版本因平台而异。Boost 1.58.0版本在Linux上兼容而在Windows上不兼容。在MacOS系统中,Boost 1.58.0版本与Clang编译器4.0+版本不兼容。

Learn, ask questions, and discuss
学习,提问和讨论

Related documentation is available in the XRP Ledger Developer Portal, including detailed reference information, tutorials, and web tools.

Other resources:

The Ripple Forum
The Ripple Dev Blog
Ripple Technical Services: support@ripple.com
XRP Chat

Upcoming Features

即将推出的新特性

The previously introduced fix1543, fix1571 and fix1623 Amendments in XRP Ledger version 1.0.0 are now open for voting. Ripple expects these amendments to become enabled on Tuesday, 2018-06-19.

在先前XRP总账版本1.0.0中引入的fix1543, fix1571和fix1623修正案现在已开放投票。Ripple预计这些修正案将于2018-06-19星期二启用。

An upcoming version of rippled will switch to using the Boost.Beast library instead of the Beast library from the rippled source code. As part of this change, the minimum supported version of Boost will change to be a version incorporating Boost.Beast.

即将推出的rippled版本将切换为使用Boost.Beast库,以取代rippled源码中的Beast库。作为更改的一部分,Boost的最低支持版本将更改为包含Boost.Beast的版本。

Ripple does not expect to enable the SHAMapV2, Tickets, or OwnerPaysFee Amendments before the next release of rippled. These Amendments have been disabled in the source code so rippled version 1.0.1 will not show them as available. Ripple plans to re-introduce some or all of these amendments in a future version of rippled.

Ripple不希望在下一个rippled版本发布之前启用SHAMapV2, Tickets,或OwnerPaysFee修正案。这些修正案已在源码中禁用,因此rippled的1.0.1版本不会显示他们为可用状态。Ripple计划在未来的版本中重新引入部分或全部这些修正案。

1.0.1 Change Log
Bug Fixes

Improve JSON exception handling
改进JSON异常处理。

Fix a corner case when decoding base64: Under some corner cases, the base64 decoder would not allocate enough memory, which could result in spurious errors.
修复一个极端情况下的base64解码问题:在某些极端情况下,base64解码器可能无法分配足够内存,进而导致虚假错误。

6 月 082018
 

https://developers.ripple.com/become-an-xrp-ledger-gateway.html

Tool Security
2)工具安全

Any time you submit an XRP Ledger transaction, it must be signed using your secret key. The secret key gives full control over your XRP Ledger address. Never send your secret key to a server operated by someone else. Either use your own rippled server, or sign the transactions locally before sending them to a rippled server.

在XRP总账网络中提交任何交易,都需要使用密钥进行签名。密钥完全控制XRP总账网络地址。
切勿将密钥发送至他人控制的服务器中,必要时在发送到rippled服务器前在本地进行交易签名。

The examples in this document show API methods that include a secret key. This is only safe if you control rippled server yourself, and you connect to it over a connection that is secure from outside listeners. (For example, you could connect over a loopback (localhost) network, a private subnet, or an encrypted VPN.) Alternatively, you could use RippleAPI to sign transactions locally before submitting them to a third-party server.

建议通过监听本地回环地址,使用专用子网或VPN来控制访问API服务。或者在提交请求至第三方服务器前使用RippleAPI先在本地进行交易签名。

6 月 062018
 

https://developers.ripple.com/become-an-xrp-ledger-gateway.html

Infrastructure

1)架构

For the gateway’s own security as well as the stability of the network, Ripple recommends that each gateway run its own rippled servers. Ripple provides detailed and individualized recommendations to businesses interested in running a significant XRP-based business.

基于安全性和稳定性,Ripple建议网关运行自己的rippled服务器。

APIs and Middleware

接口和中间件

There are several interfaces you can use to connect to the XRP Ledger, depending on your needs and your existing software:rippled provides JSON-RPC and WebSocket APIs that can be used as a low-level interface to all core XRP Ledger functionality. RippleAPI provides a simplified API for JavaScript applications.

rippled提供JSON-RPC和Websocket API两种XRP总账网络底层接口功能。

RippleAPI为Javascrip提供简单接口功能。

6 月 032018
 

https://developers.ripple.com/xrp-ledger-overview.html

The XRP Ledger is a decentralized cryptographic ledger powered by a network of peer-to-peer servers. The XRP Ledger is the home of XRP, a digital asset designed to bridge the many different currencies in use worldwide. Ripple stewards the development of the XRP Ledger, and advances XRP as a key contribution to the Internet of Value: a world in which money moves the way information does today.
The Digital Asset for Payments

XRP is a digital asset native to the XRP Ledger. Anyone with a cryptographic key and an internet connection can receive, hold, and send XRP to anyone else. XRP’s creators have developed it to be a desirable bridge currency that can facilitate trades in any other currency. XRP has many properties which make it an appealing asset for many other use cases, too:

Censorship-Resistant Transaction Processing: No single party decides which XRP transactions succeed or fail, and no one can “roll back” a transaction after it completes. As long as those who choose to participate in the network keep it healthy, they can send and receive XRP in seconds.
Fast, Efficient Consensus Algorithm: The XRP Ledger’s consensus algorithm settles transactions in 4 to 5 seconds, processing at a throughput of up to 1500 transactions per second. These properties put XRP at least an order of magnitude ahead of other top digital assets.
Finite XRP Supply: When the XRP Ledger began, 100 billion XRP were created, and no more XRP will ever be created. (Each XRP is subdivisible down to 6 decimal places, for a grand total of 100 quintillion drops of XRP.) The available supply of XRP decreases slowly over time as small amounts are destroyed to pay transaction costs.
Responsible Software Governance: A team of full-time, world-class developers at Ripple maintain and continually improve the XRP Ledger’s underlying software. Ripple acts as a steward for the technology and an advocate for its interests, and builds constructive relationships with governments and financial institutions worldwide.
Secure, Adaptable Cryptography: The XRP Ledger relies on industry standard digital signature systems like ECDSA (the same scheme used by Bitcoin) but also supports modern, efficient algorithms like Ed25519. The extensible nature of the XRP Ledger’s software makes it possible to add and disable algorithms as the state of the art in cryptography advances.
Modern Features for Smart Contracts: Features like Escrow, Checks, and Payment Channels support cutting-edge financial applications including the Interledger Protocol. This toolbox of advanced features comes with safety features like a process for amending the network and separate checks against invariant constraints.
On-Ledger Decentralized Exchange: In addition to all the features that make XRP useful on its own, the XRP Ledger also has a fully-functional accounting system for tracking and trading obligations denominated in any way users want, and an exchange built into the protocol. The XRP Ledger can settle long, cross-currency payment paths and exchanges of multiple currencies in atomic transactions, bridging gaps of trust with XRP.

Censorship-Resistant Transaction Processing

XRP is part of a new class of money which includes Bitcoin and other cryptocurrencies:

These Decentralized digital assets exist in computer systems without a central administrator. As long as the system is sufficiently decentralized, no one can roll back transactions, freeze balances, or block someone from using a decentralized digital asset. These assets are natively digital, so they can be used online across any distance.

This combines qualities of physical and centralized digital money. Prior to the invention of Bitcoin in 2009, all currencies could be divided into those two categories:

Physical coins and paper money, which individuals can use to do business without going through a central party. As physical objects, they cannot be used online, and doing business long-distance is slow and inconvenient.
Centralized digital currencies, which need an administrator to confirm transactions. The administrator also has the power to censor or roll back transactions, or disallow some individuals from using the digital currency. If the operator of a digital currency decides someone has violated its terms of service, it can freeze or even confiscate that person’s money. However, as digital balances, these currencies can be used online and are convenient across long distances.

Note:
Users of the XRP Ledger can freeze non-XRP currencies issued in the XRP Ledger. For more information, see the Freeze documentation.

The XRP Ledger’s system of trusted validators uses a small amount of human interaction to achieve better distribution of authority than other decentralized systems. Fully-automated systems for reaching consensus from an unknown set of participants are vulnerable to concentrations of voting power. For example, Bitcoin mining is disproportionately concentrated in places with cheap electricity. As Ripple curates a list of distinct validators operated by different entities in different jurisdictions, the XRP Ledger can become more resistant to censorship and outside pressures than proof-of-work mining. For more information on Ripple’s plan to decentralize the recommended set of validators, see the Decentralization Strategy Update.
Fast, Efficient Consensus Algorithm

The XRP Ledger’s biggest difference from most cryptocurrencies is that it uses a unique consensus algorithm that does not require the time and energy of “mining”, the way Bitcoin, Ethereum, and almost all other such systems do. Instead of “proof of work” or even “proof of stake”, The XRP Ledger’s consensus algorithm uses a system where every participant has an overlapping set of “trusted validators” and those trusted validators efficiently agree on which transactions happen in what order. As of early 2018, the amount of electricity the Bitcoin network uses per transaction is more than a family home in the USA uses in an entire day, and confirming the transaction takes hours. A single XRP transaction uses a negligible amount of electricity, and takes 4 or 5 seconds to confirm.

Furthermore, each new “ledger version” in the XRP Ledger (the equivalent of a “block”) contains the full current state of all balances, so a server can synchronize with the network in minutes instead of spending hours downloading and re-processing the full transaction history.

For more information on how the XRP Ledger’s consensus algorithm works, see The XRP Ledger Consensus Process. For background on why the XRP Ledger uses this consensus algorithm, see Consensus Principles and Rules.
Finite XRP Supply

Alongside war and political turmoil, hyperinflation is one of the leading causes of death for currencies. While the decentralized system of validators provides XRP with some resistance to political factors, the rules of the XRP Ledger provide a simpler solution to hyperinflation: the total supply of XRP is finite. Without a mechanism to create more, it becomes much less likely that XRP could suffer hyperinflation.

The supply of XRP available to the general public does change due to a few factors:

Sending transactions in the XRP Ledger destroys a small amount of XRP. Senders choose how much to destroy, with certain minimums based on the expected work of processing the transaction and how busy the network is. If the network is busy, potential transactions that promise to destroy more XRP can cut in front of the transaction queue. This is an anti-spam measure to make it prohibitively expensive to DDoS the XRP Ledger network. For more information, see Transaction Cost.
Each account in the XRP Ledger must hold a small amount of XRP in reserve. This is an anti-spam measure to disincentivize making the ledger data occupy too much space. XRP Ledger validators can vote to change the amount of XRP required as a reserve, to compensate for changes in XRP’s real-world value. (The last time this happened was in December 2013, when the reserve requirement decreased from 50 XRP to 20 XRP.) If the reserve requirement decreases, XRP that was previously locked up by the reserve becomes available again.
Ripple (the company) holds a large reserve of XRP in escrow. At the start of each month, 1 billion XRP is released from escrow for Ripple to use. (Ripple uses XRP to incentivize growth in the XRP Ledger ecosystem and sells XRP to institutional investors. Ripple also sells XRP programmatically on exchanges, limited to a small percentage of overall exchange volume. Ripple publishes sales figures quarterly in the XRP Markets Report.) At the end of each month, any remaining XRP the company does not sell or give away is stored into escrow for a 54-month period. For more information on Ripple’s escrow policy, see Ripple Escrows 55 Billion XRP for Supply Predictability. For more information on the technical capabilities of the Escrow feature, see Escrow.

Responsible Software Governance

Any piece of software can only be as good as the developers who code and manage it. Ripple employs a team of world-class engineers dedicated full-time to maintaining and improving the XRP Ledger software, especially the core server, rippled. The source code for rippled is available to the public with a permissive open-source license, as are many other parts of the XRP Ledger ecosystem. Ripple engineers follow best practices for software engineering, including:

A famously strict and thorough code review process
Comprehensive code coverage and unit tests
Regularly running automated checks for potential vulnerabilities and memory leaks
Regularly commissioning external reviews by professional organizations

As an entity that is obligated to hold large amounts of XRP for the long term, Ripple has a strong incentive to ensure that XRP is widely used in ways that are legal, sustainable, and constructive. Ripple provides technical support to businesses whose goals align with Ripple’s ideal of an Internet of Value. Ripple also cooperates with legislators and regulators worldwide to guide the implementation of sensible laws governing digital assets and associated businesses.
Secure, Adaptable Cryptography

Cryptography is one of the hardest parts of any distributed system, and a mistake can lead to money stolen by malicious actors anywhere in the world. The XRP Ledger uses industry-standard schemes for signing and verifying transactions, algorithms that have successfully protected hundreds of billions of US dollars’ worth of value for many years. The XRP Ledger also layers multi-signing functionality so you can use multi-factor authorization or split keys across multiple people as a backup, and provides new algorithms with a path to migrate the keys you use if a breakthrough in cryptography makes the old algorithms obsolete.

For more information, see Cryptographic Keys and Multi-Signing.
Modern Features for Smart Contracts

Besides simple value transfer with XRP payments, the XRP Ledger has several advanced features that provide useful functions for building applications that use the Internet of Value to serve previously unknown or impractical needs. Rather than running applications as “smart contracts” in the network itself, the XRP Ledger provides tools for settling contracts, while letting the applications themselves run anywhere, in whatever environment or container is appropriate. This “keep it simple” approach is flexible, scalable, and powerful.

A sample of advanced features in the XRP Ledger:

Payment Channels allow asynchronous balance changes as fast as you can create and validate signatures.
Escrow locks up XRP until a declared time passes or cryptographic condition is met.
DepositAuth lets users decide who can send them money and who can’t.
A Decentralized Exchange lets users trade obligations and XRP on-ledger.
Invariant Checking provides an independent layer of protections against bugs in transaction execution.
Amendments provide smooth upgrades to the existing feature set, so the technology can continue to evolve without fracturing the ecosystem or causing uncertainty around times of transition.

On-Ledger Decentralized Exchange

One of the biggest features that sets the XRP Ledger apart from other cryptocurrency networks is that it also contains a full currency exchange that runs on the XRP Ledger. Within this system, businesses (typically called “gateways”) can freely issue any currency they want to customers, and those customers can freely trade issued currencies for XRP or other issued currencies issued by any gateway. The XRP Ledger can execute atomic cross-currency transactions this way, using orders in the exchange to provide liquidity.

For more information on how the decentralized exchange works, see Decentralized Exchange. For more information on the gateway business model, see the Become an XRP Ledger Gateway.