Showing posts with label bitcoin. Show all posts
Showing posts with label bitcoin. Show all posts

Tuesday, January 30, 2018

[Links of the Day] 30/01/2018 : Rule of Machine Learning, Dynamic structure of political corruption networks, Bitcoin Price Manipulation

  • Rules of Machine Learning:Best Practices for ML Engineering -This document is intended to help those with a basic knowledge of machine learning get the benefit of best practices in machine learning from around Google. It presents a style for machine learning, similar to the Google C++ Style Guide and other popular guides to practical programming. 
  • The dynamical structure of political corruption networks : this is a really fascinating paper presenting an analysis of corruption and the network of individuals participating in corruption. Interesting enough: corruption runs in small groups that rarely comprise more than eight people, in networks that have hubs and a modular structure that encompasses more than one corruption scandal.
  • Price Manipulation in the Bitcoin Ecosystem : A single actor likely drove the USD/BTC exchange rate from $150 to $1000 in 2 months.


Thursday, October 12, 2017

[Links of the Day] 12/10/2017 : bitcoin resource list, time series DB seminar, Microservices debugger

  • Bitcoin resource list : extensive list of bitcoin resource ranging from basic introduction, history, tutorial, to in-depth tech materials
  • Time Series Database Lecture : 2017 Carnegie Mellon university lectures. This is quite good as it not this series of lecture not only offer high-quality theoretical knowledge in the field but also invited talk from key commercial and opensource player in this field ( influxdb, timescale, etc..) 
  • Squash : microservices debugger, because now you can't rely on your monolith debugging skill and tool set anymore ( ^_^).


Thursday, August 03, 2017

[Links of the Day] 03/08/2017 : NVMe over TCP , Lineage mapping of cryptocurrency , Perceptions of probability


  • NVMe Over TCP : interesting kernel module by solarflare that allow people to use NVMe over TCP. It will be really interesting to see what type of performance you can start to get out of such setup. Even if performance is significantly decreased ( but higher than other storage solution) the economic gain vs costly NVMe solution would make this worth it. Also, It can start to accelerate the arrival of a new type of high-performance low-cost storage applications by lowering the barrier to entry.  
  • Map of Coins : Impressive lineage mapping of crypto currency. But what is more concerning is the amount of dead Bitcoin child cryptocurrency, a lot of pump and dump scheme going on
  • Perceptions : this really cool graphics show the how human perceive probability and how fuzzy it can be.  This can explain why a certain type of person might take more risk or less based on certain information due to a different interpretation of the content. 




Tuesday, June 27, 2017

[Links of the Day] 27/06/2017 : Blockchain trust & authentication for IoT, K8s patterns, Ripple cryptocurrency Network analysis

  • Kubernetes Production Patterns and anti-patterns :  a lot of common sense, actually a lot of the patterns and anti-patterns can be applied to the other environments. But still a good refresher. 
  • Blockchain based trust & authentication for decentralized sensor networks : using blockchain to solve the trust issue in a swarm of IoT on a network. The critical bit missing is the power requirement for running all the crypto operations.
  • Large-Scale Analysis of the Ripple Cryptocurrency Network : an overview of the paper analysing the Ripple p2p blockchain based money transaction network. Turns out it suffer the same issue that "old school" p2p network. Take out the highly connected nodes and you can bring down / split the network. Nothing new, but still a good read and reminder that small network tends to be resilient to attack. But, if their resiliency diminishes with the increased reliance on a small number of highly connected nodes.


Friday, April 28, 2017

[Links of the Day] 28/04/2017 : Bitcoin Antbleed , Social Networks Rumors, HPC & AI trends

  • Increasing the Flow of Rumors in Social Networks by Spreading Groups : Looks like by fragmenting groups rumours flow more easily in social networks. To a certain extent, this mimics real life as by isolating and fragmenting group it becomes easier to spread gossip due to the difficulty by an individual in each group to check the validity of the information within its neighbourhood.
  • HPC & AI Technology Trends : Dr Eng Lim Goh of HPE talks about the trend in HPC and AI.
  • Antbleed : Apparently, BITMAIN,  the ASIC system provider of up to 70% of bitcoins miner embedded a backdoor that can disable or compromise remotely its hardware. The funny aspect is that it can potentially allow the company to pass the 51% control of bitcoin miner network, and hence allow it to rewrite the whole blockchain. The 51% threshold has always been considered as a theoretical threat that was not attainable in real circumstance. Well, guess what, it's not theoretical anymore.

Friday, November 11, 2016

[Links of the Day] 11/11/2016 : Anonymous Trustless Bitcoin, Zap golang log lib, Intel RSA controller

  • ZeroCash : Trustless Bitcoin Tumbling, the authors proposed a pooled approach to anonymise transaction in Bitcoin. However the authors go a step further than just pooling. They popose a system where participant can anonymously check in and out resources from a global pool. Effectively creating an anonymous cooperative resource sharing infrastructure. [github] [Paper]
  • Zap : Fast, structured, leveled logging in Go. When you start to reach Uber or other hyperscale microservice architecture. Every aspect counts, and logs are everywhere. This library provide a high performance structure log for go. 
  • Scalable software controller : This controller basically allow to allocate on the fly hardware ressource, compute, memory storage, network based ont the demand of the deployment tool (openstack, k8, mesos, etc..) . 

Tuesday, April 26, 2016

[Links of the day] 26/04/2015 : Quantum Bitcoin, Non-transactional distributed systems consistency and Flame Graph

  • Consistency in Non-Transactional Distributed Storage Systems : This paper tries to provide a comprehensive overview of different consistency notions that appeared in distributed systems with a focus on storage systems. The authors define 50 different consistency notions, ranging from linearizability to eventual and weak consistency which is subsequently mapped to different practical systems and research prototypes. 
  • Flame Graph : ACM queue article on the necessity of good visualization tool for profiling , debugging, and optimizing computing systems.
  • Quantum Bitcoin : In this paper the authors describe a Bitcoin-like currency that runs on a quantum computer using the non-cloning quantum property. While not everybody has (yet) the luxury to have a quantum computer, the solution presented offers several advantages over classical Bitcoin, including immediate local verification of transactions with full anonymity for the users, no transaction fees and the system can scale to any transaction volume. Now you just need a quantum computer :)

Tuesday, December 08, 2015

Bitcoin: the blockchain ecosystem lubricant

As mentioned in a previous post, Bitcoin is a rather attractive solution for self contained market ecosystem. What is really attractive and useful is the underlying blockchain technology. Recently, banking institution and other financial institutions have started looking into the possibility to deploy blockchain technology to implement a distributed ledger system. However, these institutions might want to create a fully private self contained blockchain system, probably without any virtual currency functionality.

Private blockchain

Financials institution have an history of seeking privacy and control over the tools and mechanism they rely on. As a result, they will have the natural tendency to try to deploy their own private blockchain platform. Essentially, instead of having a fully public and uncontrolled network and state machine secured by cryptoeconomics (eg. proof of work, proof of stake), they seek the creation of a system where access permissions are more tightly controlled, with rights to modify or even read the blockchain state restricted to a few users, while still maintaining many kinds of partial guarantees of authenticity and decentralization that blockchains provide. The obvious objective for a consortium or company running a private blockchain is to be able to change the rules of a blockchain, revert transactions, modify balances, etc.


Private does not implies trust

The parties to a transaction have to be 100% confident that nobody can change the transaction. However, since you can change the rules at will there's a risk of manipulation of the system. The potential collusion, and lack of transparency for a system that requires an arbitration system to guarantee fair execution should be concerning for potential customer. Naturally, there is many incentive to have a private systems such that the need to protect the secrecy of transaction. But, you can still deliver such feature by relying on hybrid system where you have dark transaction pool sanctioned by the public infrastructure. Moreover, without a virtual currency to provide an incentive for uninterested third party to participate in the system, accountability remains difficult to ascertain.


Blockchain system lubricant : Bitcoin 

Public blockchain system is tied to a virtual currency, which reinforce its trust-ability while allowing an incentive in selfish participation. The principle is that blockchain consumer recompense participant in a form of tit for tat approach, allowing a more heterogeneous ecosystem preventing the dominance of a single type of participant as well as peer pressure to keep the system trust-able. Without it, the value of the currency will simply vanish and as a result remuneration from participation.
This heterogeneity prevent collusion (think LIBOR scandal) and make the system more robust and accountable. This is where bitcoin is really needed and shine, not for common everyday operations.

Monday, November 30, 2015

Bitcoin double “double trouble”

Two of the main hurdle for large scale Bitcoin adoption as an everyday payment method are :
  1. Any payment for a physical good at a brick and mortar shop require the equivalent of a double foreign exchange transaction by all the party involved.
  2. This type of payment are also exposed to double spending attack. Where the buyer fool the seller into thinking that the transaction occurred while it get invalidated at a later date but not before the buyer left with the goods.
These problems can potentially generate a significant overhead (as in fees) due to the risk associated with each operations. These uncertainties are major roadblocks on the democratisation of Bitcoin as an alternative currency for common transaction.

Double fee problem :


So what is the double fee issue ? It is the need for both party involved to convert the currency for paying / getting payed into another one due to the lack of widespread Bitcoin use coupled with the need to pay or get payed in the official currency of the country of residence. To put it simply it is as if Alice is selling the good while living in US (dollar), but is getting paid for them in Euro, by Bob from in China (yuan).
They will be exposed to this problem unless the consumer and the end-to-end product value chain ( supply and demand chain) relies only on Bitcoin currency for all their monetary transaction. By only relying on Bitcoin, I also implies that tax, salaries etc.. are in paid Bitcoins. In extenso, this implies a blanket replacement of the “traditional” currency for any operations associated with the sell/buy. Without these conditions fulfilled, all the parties involved expose themselves to double fee problem.
I will now explore some of the sub problem associated with the double “FX” fee problem : price conversion tracking and long term fluctuation risk. 

Price Conversion tracking:

Alice buys her goods in dollars, and sell in Dollars or Bitcoins. To avoid losing on the conversion due to the fluctuating Bitcoin exchange rate, Alice needs to update daily (at least) the goods price. While, this is not a major hurdle for online shops, it is quite a tedious process for brick and mortars one. Obviously, this could be done at the till on the spot however this implies that there would be no possibility to dual pricing sticker with the items.

Long term fluctuation risk :

After Bob pays Alice in Bitcoin, Alice will not convert the payment immediately in order to avoid paying a large amount of exchange Fees for each transaction. Ideally, Alice want to batch the conversion of her Bitcoins in order to reduce the transaction overhead. However, the lengthier the retention, the higher the risk of loss due to drop in Bitcoin price. Naturally if the price goes up Alice would have made a profit on the exchange rate, but this is equivalent to trading of the foreign exchange rate. This can be perceived as a significant risk by merchants, banks, accountant. Moreover, it is not really clear how this needs to be treated under accounting rules and how tax needs to be paid. 
One can advocate that Alice does not have to convert her Bitcoin and keep using them within a self contains market ecosystem. However, this is rather impractical or near impossible to achieve as Alice still needs to pay tax and salaries in the local currency. It is only possible if the Bitcoin’s transaction are marginal compared to the overall amount of transactions the business does.
On Bob’s side, the risk is more limited as it is almost the same as the one of a Tourist buying currency in advance of its trip. 

Next we will be looking at another consequence of the use of Bitcoin in everyday transaction : fraud by double spending attack.

Transaction delay and double spending :


The average confirmation time of a Bitcoin transaction is ~7 minutes. As a result, it is clear that brick and mortar vendors, such as vending machines and take-away stores, cannot rely on transaction confirmation when accepting Bitcoin payments. We cannot really see the cashier asking the client to wait 7 mns to get the transaction acknowledgement. It is even worse for fee less transaction. You would be lucky to get it done within 24h and it can take much longer. To address that, Bitcoin encourages vendors to accept fast Bitcoin payments with zero confirmations as soon as the vendor receives a transaction from the network transferring the correct amount of BTCs to one of its addresses.
However, this opens up the whole process to potential fraud via double spending techniques. In our case Bob needs to trick Alice into accepting a Bitcoin transaction that Alice will not be able to redeem subsequently. Basically Bob issue a transaction toward on of its own addresses for the same Bitcoin used for the payments of Alice goods. If both transactions are sent at the same time, and Bob’s transaction is acknowledge before Alice one (can use a higher fee, or other tricks), Alice transaction will be cancelled. By this time of course, in a fast transaction, Alice has already released the goods.

This beg the question, how Bitcoin debit card provider handle this issue? And what insurance and accounting solution they have in place to prevent abuse and protect from malicious operations. This is a huge risk as well as trial by fire for these companies. They not only risk the future of their company but also the trust in Bitcoin as a trade currency. Maybe Insurance companies might be able to offer a partial solution here as it might not be 100% possible to cull such attacks. However, this would make Bitcoin impractical for small due to excessive fees associated with insurance premium.


To conclude Bitcoin has a really bright future as the overlay virtual currency on top of the blockchain technology. However, its potential reach within the everyday financial transactions system might be greatly overestimated. There is a lot of complex problem to be solved in order to establish trust as well as cost efficient system for brick and mortar shops. And like anything happening in the real world, the spread of new technology is often slow, just look how long it took to get NFC payment out. And don't get me started on the chip and pin system which is not even widely used in USA yet.





Monday, September 07, 2015

Links of the day 07/09/2015 : #bitcoin, computer science paper, and micro datacenter

  • Paper we love : A lot of good talk mainly introduction level: 
    • Bitcoin : overview of the bitcoin Peer-to-Peer Electronic Cash System for those living under a rock for the past 2 years.
    • Propositions as Types : Michael Bernstein talks about Philip Wadler’s paper Propositions as Types, which starts out with the following sentence: "Powerful insights arise from linking two fields of study previously thought separate." And just keeps on going from there. In less than 9 full pages, Wadler assembles an exuberant, hilarious take on the deep, meaningful connections between mathematics, philosophy, and computer science.
  • Micro Datacenter : Microsoft makes the argument that for the future of mobile computing edge computation and the doting of physical landscape will be the only way to solve the latency issue. I agree to a certain extent however as usual the requirement for that to happens many other technology needs to bridge some chasm in term of maturity. Surprisingly AOL experimented with that idea ~3 years ago.


Monday, May 25, 2015

Links of the day 25 - 05 - 2015

Today's links 25/05/2015 : PIP for #GO, #RumpKernel stack and #Bitcoin discussion

Wednesday, April 22, 2015

Links of the day 22 - 04 - 2015

Today's links 22/04/2015: #bitcoin alternative, Nested OS , #Intel MXP, State of Probabilistic Programming

Friday, April 10, 2015

Links of the day 10 - 04 - 2015

Today's links 10/04/2015: out of core #Bitcoin transaction, cluster mgmt @google, DC memory & storage

  • Lightning Networks : Summary of the 4 part blog post by Rusty Russell. The concept is really interesting however it also require a "soft fork" of bitcoin. And that won't be easy.
  • Cluster Management at Google : John Wilkes shares lessons learned managing clusters at the scale of Google.
  • Datacenter memory and storage: very good overview of server primary system memory and secondary storage technologies spanning the past, present, and future.


Thursday, April 02, 2015

Links of the day 02 - 04 - 2015

Today's links 02/04/2015: Billing &  payment, #Bitcoin Lightning transactions, Compression benchmark, #unikernel
  • Billing & Payments Engineering Meetup II : lots of very interesting talk about the difficulty of processing payements at scale while maintaining compliance and security [first meetup]
  • Lightning Networks Part I - Revocable Transactions : very good break down by Rusty Russel of the Lightning Network paper. The promise of this work is exceptional: instant reliable transactions across the bitcoin network.
  • Squash Benchmark : compression benchmark with 28 datasets, each of which is tested against 23 plugins containing 39 codecs at every compression level they offer—the number varies by codec, but there are 178 in total, yielding 4,984 different settings. The benchmark is currently run on 8 different machines (with more coming soon!) for a current grand total of 39,872 configurations.
  • A VM for every URL: interesting experiment where the author tries to run a single unikernel per URL, not really anything significant can be derived from the experiment but it shows the direction the industry is going for. 

Wednesday, April 01, 2015

Links of the day 01 - 04 - 2015

Today's links 01/04/2015: Messaging, WS #Tor Routing, #Bitcoin time stamping, HPC programming model


Thursday, March 19, 2015

Links of the day 19 - 03 - 2015

Today's links 19/03/2015:#python framework, #linux perf tools, #bitcoin API, Memory-centric distributed  #storage
  • SuPPort : in-development distillation of PayPal Python Infrastructure. SuPPort is an event-driven server framework built on top of several open-source technologies designed for building scalable and maintainable services and clients.
  • Linux Performance Analysis: New Tools and Old Secrets : Brendan Gregg's excellent talk on new Linux performance tools: perf-tools collection. These use existing kernel frameworks, ftrace and perf_events, which are built in to most Linux kernel distributions by default, including the Linux cloud instances he analyze at Netflix.
  • Coinkite : Bitcoin API provides simple and powerful REST integration for adding bitcoin functions into application.
  • Tachyon: A memory-centric storage system enabling reliable file sharing at memory-speed across cluster frameworks, such as Spark and MapReduce. [SOCC 13] [Github]

Thursday, March 12, 2015

Links of the day 12 - 03 - 2015

Today's links 12/03/2015: cryptocurrency landscape, vsphere memory state, hyperscale datacenter system, rowhammer bit flip
  • Bitcoin Landscape : database and categorization of crypto based company [ database here ]
  • Vsphere memory state : What technique vmware use to increase memory density depending of the system memory state . Bonus : memory management performance in vsphere 5.0
  • HDS 8000 : Ericsson HDS 8000 (Hyperscale Datacenter System), built on Intel® Rack Scale Architecture. It uses optical interconnect. Combining a disaggregated hardware architecture with optical interconnect removes the traditional distance and capacity limitations of electrical connections.
  • Project Zero - row hammer : how flipping bit in memory can allow you to gain root access to a physical machine. Basically by aggressively flipping 2 bits you can trigger the third one to switch. ECC can help prevent that to a certain extent but is not completely immune.

Monday, February 23, 2015

Links of the day 23 - 02 - 2015

Today's links 23/02/2015: #Bitcoin K/V store, distributed systems, Job Titles and Latency visualization
  • Blockstore : experimental key-value store (for unique, global name registration and secure data storage) on top of Bitcoin. 
  • Highly Distributed Computations Without Synchronization : this article explore the basic building blocks for crafting deterministic applications that, when operating over data structures that guarantee convergence in the event of concurrent operations, guarantee convergence of the applications themselves. 
  • The Problem with Job Titles : interesting view on what job title really mean for different people. However this works both way, company misuse job title the same way employee misinterpret them. 
  • HdrHistogram : histogram designed for recoding histograms of value measurements in latency and performance sensitive applications. [github]