Monthly Archives: September 2017

Blockchain: Links And Resources (88)

Previous Post
Next Post

How one hacker stole thousands of dollars worth of cryptocurrency with a classic code injection hack on EtherDelta and what you can learn from it
https://hackernoon.com/how-one-hacker-stole-thousands-of-dollars-worth-of-cryptocurrency-with-a-classic-code-injection-a3aba5d2bff0

Cardano mainnet is live
https://cardanolaunch.com/

Cardano project
https://iohk.io/projects/cardano/

China’s Crypto Crackdown Won’t Slow Down Asia, Says Ethereum Creator Vitalik Buterin
https://www.forbes.com/sites/elaineramirez/2017/09/27/vitalik-buterin-ethereum-korea-interview/#34263b516357

Viper, new contract language
https://github.com/ethereum/viper

Indian Blockchain Revolution Backed by John McAfee
https://cointelegraph.com/news/indian-blockchain-revolution-backed-by-john-mcafee

Governments in race for blockchain
https://www.raconteur.net/finance/governments-in-race-for-blockchain

Litecoin Creator Charlie Lee Publicly Opposes SegWit2x
https://cointelegraph.com/news/litecoin-creator-charlie-lee-publicly-opposes-segwit2x

Stay tuned!

Angel “Java” Lopez
https://github.com/ajlopez
http://www.ajlopez.com
http://twitter.com/ajlopez

 

Blockchain: Links And Resources (87)

Previous Post
Next Post

BREAKING: Amazon Will Accept Bitcoin By October
https://squawker.org/technology/breaking-amazon-will-accept-bitcoin-by-october/

Bitcoin Was Just Used to Pay for a New Home in Texas
https://futurism.com/bitcoin-was-just-used-to-pay-for-a-new-home-in-texas/

Ripio Credit Network Announces ICO Pre-Sale, Crowd Sale Starts on October 17
https://www.crowdfundinsider.com/2017/09/122033-ripio-credit-network-announces-ico-pre-sale-crowd-sale-starts-october-17/

Welcome to Bitcoin Country: Silk Road and the Lost Threads of Agorism
https://www.coindesk.com/welcome-bitcoin-country-silk-road-lost-threads-agorism/

Ethereum Solidity Contract Tutorial
https://github.com/ethereum/go-ethereum/wiki/Contract-Tutorial

Untangling Bitcoin: Why Russell Yanofsky Is Taking Apart Crypto’s Oldest Code
https://www.coindesk.com/untangling-bitcoin-russell-yanofsky-taking-apart-cryptos-oldest-code/

One in five central banks say they will be using blockchain tech by 2019
https://qz.com/1083712/one-in-five-central-banks-say-they-will-be-using-blockchain-tech-by-2019/

CoinDash Weekly update — September 19th
https://blog.coindash.io/coindash-weekly-update-september-19th-f4a848bc6dbd

Stay tuned!

Angel “Java” Lopez
https://github.com/ajlopez
http://www.ajlopez.com
http://twitter.com/ajlopez

Blockchain: Links And Resources (86)

Previous Post
Next Post

A Smart Contract Creator
https://etherparty.io/

Todo sobre Ethereum en Español
http://ethereumdapps.net/

How to implement Cryptographic algorithms in smart contracts
https://ethereum.stackexchange.com/questions/12128/how-to-implement-cryptographic-algorithms-in-smart-contracts

Is there a (theoretical) limit for amount of data that a contract can store?
https://ethereum.stackexchange.com/questions/1038/is-there-a-theoretical-limit-for-amount-of-data-that-a-contract-can-store

Strategist predicts bitcoin, digital currency trading volume will ‘soon surpass’ Apple’s
https://www.cnbc.com/2017/09/22/strategist-predicts-bitcoin-digital-currency-trading-volume-will-soon-surpass-apples.html

Barclays Joins CLS Blockchain Consortium in Search of Swift Alternative
https://www.coindesk.com/barclays-joins-cls-blockchain-consortium-search-swift-alternative/

RANDAO: A DAO working as Random Number Generator of Ethereum
https://github.com/randao/randao

How can I deploy a contract with reference to a library contract without using a graphical user interface like Browser Solidity?
https://ethereum.stackexchange.com/questions/11030/how-can-i-deploy-a-contract-with-reference-to-a-library-contract-without-using-a

Stay tuned!

Angel “Java” Lopez
https://github.com/ajlopez
http://www.ajlopez.com
http://twitter.com/ajlopez

Blockchain: Links And Resources (85)

Previous Post
Next Post

What is Ethereum Metropolis: The Ultimate Guide
https://blockgeeks.com/guides/ethereum-metropolis/

Ropsten testnet chain state
http://status.ropsten.ethereum.org/
Testnet fork activation for the Byzantium (Metropolis part 1) hard fork! Activation block is 1700000 (1.7 million)

‘Crazy’ ICOs are driven by Bitcoin millionaires who need to diversify but don’t want to pay tax
http://uk.businessinsider.com/crazy-ico-bitcoin-millionaires-tax-2017-9

Announcing the winners of the first Underhanded Solidity Coding Contest
https://medium.com/@weka/announcing-the-winners-of-the-first-underhanded-solidity-coding-contest-282563a87079

Lessons Learnt from the Underhanded Solidity Contest
https://medium.com/@chriseth/lessons-learnt-from-the-underhanded-solidity-contest-8388960e09b1

Writing upgradable contracts in Solidity
https://blog.colony.io/writing-upgradeable-contracts-in-solidity-6743f0eecc88

Library Driven Development in Solidity
https://blog.aragon.one/library-driven-development-in-solidity-2bebcaf88736

Toyota pushes into blockchain tech to enable the next generation of cars
https://techcrunch.com/2017/05/22/toyota-pushes-into-blockchain-tech-to-enable-the-next-generation-of-cars/

Stay tuned!

Angel “Java” Lopez
https://github.com/ajlopez
http://www.ajlopez.com
http://twitter.com/ajlopez

 

Building A Blockchain (16)

Previous Post

In recent months I have been busy working on the RSK project. It’s time to write about my personal blockchain projects:

https://github.com/ajlopez/BlockchainSharp
https://github.com/ajlopez/SimpleBlockchain
https://github.com/ajlopez/RskSharp

Currently, the most active one is the C# project. I added one project:

https://github.com/ajlopez/BlockchainJ

in Java. The experience I gained written all this code (using test-driven design, as usual) gaves me a clear idea of what is involved when building a blockchain. Writing my own implementations gave me better understanding of the parts related to the creation of a blockchain. And now the RSK project (Java core implementation) is public, I’m free to relate this work with an existing full implementation.

The key points to be written are:

  • Entities
  • States
  • Virtual machine to run smart contracts
  • Encoders
  • Consensus
  • Validation logic
  • Inter-node communication
  • Expose node state to external applications

The base entities are:

  • Block
  • Transaction
  • Account

The states to be kept are:

  • Blockchain
  • Account state
  • Contract state

My projects are oriented to have smart contracts, a la Ethereum. One reason to have a virtual machine is be agnostic of host programming language. I think that having a way of run smart contract that is independent of the programming language used in each project, is an interesting feature. So, I should define:

  • Virtual machine opcodes
  • Transient (memory) storage
  • Persistent storage

I need encoders for blocks, transactions and account states. The encoded entities are used in the network communication, local storage, and in the hash calculation. For example, when I have to transmit a block I encoded it. And if I want to send the block to another node, I should encoded the block before transmission. And the encoded data is the basis for hash calculation.

The inter-node communication includes:

  • Message definitions
  • Message and handshake protocol
  • Peer-discovery protocol

Validation logic refers to:

  • Validation of blocks
  • Sign of transaction and its validation

Consensus logic has:

  • Selection of the next block
  • Run of the transactions, updating the accounts/contracts states

The exposure of a node state is implemented in Bitcoin and Ethereum using JSON RPC (Remote procudure call), usually exposed via http. In this way, the node can be accessed by external technologies implemented in different technologies (JavaScript blockchain ecosystems are the more popular).

Followin Ethereum ideas, one entity I implemented many times is a trie. I think my implementations are very simple and effective. I hope to be able to write in the next posts about those implementations.

Stay tuned!

Angel “Java” Lopez
https://github.com/ajlopez
http://www.ajlopez.com
http://twitter.com/ajlopez

 

 

 

Blockchain: Links And Resources (84)

Previous Post
Next Post

Scaling Lightning? How Revive Could Boost Bitcoin’s Boldest Scaling Plan
https://www.coindesk.com/scaling-lightning-revive-boost-bitcoins-boldest-scaling-plan

Ethereum’s ERC-20 Token Standard Has Been Formalized
https://www.coindesk.com/ethereums-erc-20-token-standard-formalized/

Steak Is the New Salad: Why These Techies Are Embracing an All-Meat Diet
https://www.inc.com/sonya-mann/bitcoin-carnivores.html

Estonia “Could Raise Billions” in an ICO Says e-Residency’s Director
http://www.trustnodes.com/2017/09/22/estonia-raise-billions-ico-says-e-residencys-director

World Governments Have Declared War on Bitcoin: John McAfee
https://www.thestreet.com/story/14315079/1/bitcoin.html

Principales actores del ecosistem Blokchain en Argentina
https://criptonoticias.com/educacion/principales-actores-ecosistema-blockchain-argentina-organizaron-catedra-bitcoin-buenos-aires/#axzz4tRU6CwLa

Dubai Aims to Be a City Built on Blockchain
https://www.wsj.com/articles/dubai-aims-to-be-a-city-built-on-blockchain-1493086080

John McAfee: China Bitcoin Ban Will Not Extend to Mining
https://www.cryptocoinsnews.com/john-mcafee-china-bitcoin-ban-will-not-extend-mining/

Stay tuned!

Angel “Java” Lopez
https://github.com/ajlopez
http://www.ajlopez.com
http://twitter.com/ajlopez

Artificial Intelligence: Links And Resources (42)

Previous Post
Next Post

The Future of Go Summit: AlphaGo & Ke Jie match 1 moves analysis
https://www.youtube.com/watch?v=cupxZ2Mz6VI

Time For A Paradigm Shift Has Come
https://www.reddit.com/r/Iota/comments/70ya29/time_for_a_paradigm_shift_has_come/

IBM Watson: Getting Started with Watson Content Hub APIs (JavaScript)
https://developer.ibm.com/customer-engagement/tutorials/getting-started-api-javascript/

DIY Object Recognition with Raspberry Pi, Node.js, & Watson
https://boneskull.com/diy-object-recognition/

This Is Why All Companies Need An AI Strategy Today
https://www.cbinsights.com/research/artificial-intelligence-strategy/

AlchemyLanguage
https://www.ibm.com/watson/developercloud/alchemy-language.html

Natural Language Understanding
https://www.ibm.com/watson/services/natural-language-understanding/

Plexus: An Interactive Visualization Tool for Analyzing Public Emotions from Twitter Data
https://arxiv.org/ftp/arxiv/papers/1701/1701.06270.pdf

Stay tuned!

Angel “Java” Lopez
https://github.com/ajlopez
http://www.ajlopez.com
http://twitter.com/ajlopez