Application
How Decentralised Convertible Virtual Currency Works as a Payments Mechanism
Functional aspects of decentralised convertible VC networks of single-currency VC payments networks, like Bitcoin (not specifically for currency-agnostic platforms like Ripple)
Also see FATF’s June 2014 Virtual Currencies—Key Definitions and Potential AML/CFT Risks
Bitcoin
- The Bitcoin protocol was designed to replicate various trust functions that financial institutions typically perform as intermediaries in electronic and cash transactions primarily prohibition of double-spending and counterfeiting.
- Guaranteeing against “double-spending” in a decentralized environment
- A VC user’s ceding ownership of the VC to one person and then ceding ownership of the same VC to another person.
- VC exists in the form of a digital file that can be easily duplicated and has no trusted authority maintaining a central record of transactions
Solution:a distributed online public ledger, called the blockchain, and on public key cryptography to verify transactions.
- Public-key cryptography is a cryptographic method that assigns a user two keys: a public key and a private key.
- A public key (a.k.a. Bitcoin address) is a unique identifier that functions similarly to an e-mail address for the receipt of e-mail, and serves as an account for receiving bitcoins.
- A private key is a cryptographic code that functions as a secret password that allows the user to sign a VC transaction and transfer the bitcoins to another address.
- Using the private key proves ownership of the bitcoins.
- Every Bitcoin public key/address has a matching private key.
- The private key is mathematically related to the Bitcoin address and is designed so that the Bitcoin address can be calculated from the private key, but the same cannot be done in reverse, thus providing transaction and account security.
- The public key must be paired with the private key (signature) in order for the VC to be transmitted
- The Bitcoin protocol requires every transaction to be validated, logged and disclosed8 on the blockchain.
Blockchain:The blockchain functions as a public transaction reporting system.
- Blocks: each block is a grouping of reported transactions in chronological order.
- Mining: When a transaction is initiated (proposed), it is broadcast to the network and participants, called miners, running a special piece of software, validate the transaction by solving a complex mathematical problem that verifies that the bitcoins in the proposed transaction have not already been spent and add it to the blockchain.
- Validation: This same distributed (community) validation process, called “mining,” generates new bitcoins, which are rewarded as payment to the first miner that solves the algorithm validating the transaction.
- Every transaction that ever took place is recorded in order on the blockchain.
Participating in the Bitcoin
Without intermediaries
- Step One: Obtain the Public Keys (Addresses), Private Keys, and Wallets Needed to Participate in the Bitcoin Network
- download and install free Bitcoin software (called the Bitcoin “client”)
- The client software contains a wallet program that generates and stores public-private key pairs
- Public Key: a 24 to 37-character string of numbers and letters
- Private key: random sequences of 64 letters and numbers generated by and stored in the client are mathematically linked to a specific Bitcoin address.
- As a practical matter, private keys are the user’s virtual currency.
- A wallet the user downloads and stores on his/her own computer or other digital device is called an unhosted wallet. The user can store his/her unhosted wallet online (“hot storage”) or offline (“cold storage”).
- Step Two: Obtain Bitcoins
- 1) purchase VC from a third-party exchanger, using fiat money or other VCs;
- (2) engage in specific activities that earn VC payments (e.g., respond to a promotion, complete an online survey, provide a real or virtual good or service);
- (3) receive them as gifts or rewards; and
- (4) self-generate bitcoins by mining them
- Step Three: Transfer Bitcoins (see chart in document)
- The user uses the private key(s) to unlock his/her digital wallet and digitally sign the transaction.
- The transaction itself contains three pieces of information:
- (1) an input (the bitcoin address that was used to send the bitcoins to the current sender;
- (2) an amount (the amount of bitcoins the sender is transferring); and
- (3) an output (the recipient’s bitcoin address).
- Bitcoin miners include it in a transaction block, verify the transaction and enter it onto the blockchain, confirming the transaction.
- Step Four: Confirmation
- Once a transaction in a block has been added to the blockchain, it remains part of the blockchain.
- All subsequent blocks in the blockchain are built on top of the block containing that particular transaction.
- Each block added to the blockchain after a block containing a given transaction is considered a confirmation of that transaction.
- A confirmation reflects consensus on the network that the particular bitcoins the recipient has received have not been sent to anyone else and are considered the recipient’s property.
- A transaction must be confirmed before the recipient can spend/send the bitcoins he/she has received.
- Generally, a transaction is not considered to be adequately confirmed until a certain number of confirmations (subsequent blocks)—typically, six—appears on the blockchain.
Intermediaries Infrastructure
- VC payments products and services (VCPPS) that facilitate use of decentralised VC payments networks, particularly Bitcoin.
- make it much easier to store the VC and conduct decentralised VC transactions
- the decentralised virtual currency “ecosystem”
- Wallet provider:
- a Bitcoin (VC) exchange or online wallet service that can obtain and store the VC in a hosted wallet, provided and safeguarded by a wallet provider.
- maintains the customer’s virtual currency balance and generally also provides storage and transaction security
- may offer encryption;
- multiple key (multi-key) signature protection;
- backup/cold storage; and
- mixers
- All Bitcoin wallets can interoperate with each other.
- May hold both the public and private keys for the customer’s VC and transfer the VC to third parties at the direction of the customer, to make payments and send remittances.
- Two predominant models of third-party wallets
- “Traditional” wallet hosting services: the customer has his/her own wallet but the file is held on the third-party wallet service’s servers. (There are numerous variations of this model, particularly with regard to whether the host has full control of the private key(s).
- The second model (VCPPS):
- The customer funds are held in pooled accounts, and the company conducts transfers/withdrawals at the customer’s direction. This business model allows more of the VC funds to be held in cold storage, without impairing customer access to his/her VC.
- Virtual currency payment processor (a.k.a. third-party payments sender; merchant payments processor)
- an entity that facilitates merchant acceptance—i.e., it is an entity that facilitates the transfer of virtual currency payments from a user (customer) to a merchant or other business or professional that provides consumer goods or services.
- provides software applications or embeddable code that allow the merchant or other business to accept the virtual currency payment on its Internet website or at its brick-and-mortar location, and that either electronically transmit the virtual currency to the merchant’s wallet (hosted by the processor or another wallet provider, or unhosted and held directly by the merchant),
- Converts some or all of the virtual currency into fiat currency and transmit an e-money payment to the merchant’s account, as directed.
- Processors make it easier for everyday, non-tech-savvy businesses/customers to accept virtual currency payments.
- May offer exchange (conversion) services for merchants that accept convertible virtual currency as payment but fear potential negative volatility of the currency, allowing them for hedging purposes to immediately convert incoming virtual currency into a fiat currency of their choice.
- Bitcoin ATM (a.k.a. BTM)
- An automated machine used to exchange fiat currency for bitcoin and/or other virtual currency, and vice versa.
- mono-directional machines: A bitcoin ATM to purchase bitcoins (and possibly other virtual currency)
- bi-directional machines –i.e., cash-in/Bitcoin-out or vice versa: both purchase virtual currency and cash-out virtual currency for fiat currency by withdrawing the fiat currency in exchange for the convertible virtual currency at the ATM.
Artificial Intelligence and Machine Learning
Artificial Intelligence and Machine Learning
AI Financial crimes and compliance
Advantages of using AI/ML systems for the purposes of AML/CFT monitoring and analysis
- In contrast to the static rules based systems of transactions monitoring, AI-based systems can be source flows of real-time data. Additionally AI systems learn over time.
- Consequently the quality and quantity of alerts generated improve over time, especially in the reduction of the number of false positive alerts.
- Machine-learning systems pour through petabytes of data to zero in on suspicious correlations. But often the processes that lead these systems to flag questionable transactions are shrouded in mystery—a “black box.” Regulators have to understand how and why a bank pinpointed a specific transaction or individual. This is essential for fairness and legal transparency.
- AI equipped for fighting money laundering can factor in the webs of people’s relationships, along with the patterns of transactions, and incorporate it all into risk scores. For example, one important variable is geography. s the system receives feedback, including its hits and misses, it recalibrates the weight it places on each of these changing variables to make smarter decisions in the future.
- By leveraging temporal reasoning, case-based reasoning and fuzzy logic, unsupervised learning technology can empower organizations to better manage their security alerts and legacy rules, proactively identify the “weakest links,” keep up with a variety of threat actions over a long period of time and automatically deliver auditor reports that detail what occurred and how.
- Anti-Money Laundering in Bitcoin: Experiments with Graph Convolutional Networks for Financial Forensics (Elliptic Datasets)
- advancements in deep learning for graph or network structured data show promise for identifying bad actors in complex money laundering schemes.
Machine Learning Process
- Data Collection: Collect the data that the algorithm will learn from.
- Data Preparation: Format and engineer the data into the optimal format, extracting important features and performing dimensionality reduction.
- Training: Also known as the fitting stage, this is where the Machine Learning algorithm actually learns by showing it the data that has been collected and prepared.
- Evaluation: Test the model to see how well it performs.
- Tuning: Fine tune the model to maximise it’s performance.
Machine Learning Algorithms include
- Nearest Neighbor— classification algorithm, used in supervised learning domain; applied in pattern recognition, data mining and intrusion detection. Uses two data sets—training set and testing set
- Naive Bayes— a probabilistic algorithm can be used for classification problems (e.g. spam filters); used in supervised learning domain
- Decision Trees— a tree-structured classifier, where internal nodes represent the features of a dataset, branches represent the decision rules and each leaf node represents the outcome; used in supervised learning domain (used in forecasting)
- Linear Regression—used in supervised learning domain; the predicted output is continuous and has a constant slope (used to predict values)
- Support Vector Machines (SVM)— a supervised machine learning model that uses classification algorithms for two-group classification problems (used in text categorization, image classification)
- Neural Networks—a set of algorithms, modeled loosely after the human brain, that are designed to recognize patterns.
- K-Means Clustering— an iterative algorithm that tries to partition the dataset into Kpre-defined distinct non-overlapping subgroups (clusters) where each data point belongs to only one group. It tries to make the intra-cluster data points as similar as possible while also keeping the clusters as different (far) as possible.
- Association Rules— Association rules are if/then statements that help to uncover relationships between unrelated data in a database, relational database or other information repository. Association rules are used to find the relationships between the objects which are frequently used together. Used in basket data analysis, classification, cross-marketing, clustering, catalog design, transaction analysis etc.
- Q-Learning— a model-free reinforcement learning algorithm to learn a policy telling an agent what action to take under what circumstances. It does not require a model (hence the connotation "model-free") of the environment, and it can handle problems with stochastic transitions and rewards, without requiring adaptations.
- Temporal Difference (TD)— a blend of the Monte Carlo (MC) method and the Dynamic Programming (DP) method; a class of model-free reinforcement learning methods which learn by bootstrapping from the current estimate of the value function (used in neuroscience)
- Deep Adversarial Networks— or Generative Adversarial Networks (GANs) use two neural networks— a generator and discriminator. The generator generates output and the discriminator critiques it. By battling against each other they both become increasingly skilled.
AI/ML Terminology
Anomaly Detection: Involves identification of rare or unusual items that differ from the majority of data and uses unsupervised learning to separate and detect strange occurrences. Anomaly detection is well suited in scenarios such as fraud detection and malware detection.
Association: Association Learning is used to uncover the rules that describe the data (related items)
Auto-encoder: an unsupervised artificial neural network that learns how to efficiently compress and encode data then learns how to reconstruct the data back from the reduced encoded representation to a representation that is as close to the original input as possible.
Classification: Grouping of similar data points into different sections in order to classify them. In other words, classification is the best way to separate data points with a line (i.e. linear separatability)
Clustering: In unsupervised learning clustering is used to create groups with differing characteristics. Clustering attempts to find various subgroups within a dataset. Because it is unsupervised learning, there is no restriction to any set of labels and to choose how many clusters to create.
Dataset: A set of data examples, that contain features important to solving the problem.
Decision Boundaries: The lines drawn between classes;
Decision Surface: The entire area that is chosen to define a class. Data point that falls within the decision surface boundaries are assigned a certain class.
Deep Belief Networks: algorithms that use probabilities and unsupervised learning to produce outputs. They are composed of binary latent variables, and they contain both undirected layers and directed layers. Unlike other models, each layer in deep belief networks learns the entire input.
Deep Learning: Deep learning uses a technique that gives machines an enhanced ability to find—and amplify—even the smallest patterns. This technique is called a deep neural network—deep because it has many, many layers of simple computational nodes that work together to munch through data and deliver a final result in the form of the prediction.
Dimensionality Reduction: Dimensionality reduction aims to find the most important features to reduce the original feature set down into a smaller more efficient set that still encodes the important data. Principal Component Analysis (PCA) is a commonly used technique.
Features: Important pieces of data that help us understand a problem. These are fed in to a Machine Learning algorithm to help it learn.
Generative Adversarial Networks: Generative Adversarial Networks (GANs) use two neural networks— a generator and discriminator. The generator generates output and the discriminator critiques it. By battling against each other they both become increasingly skilled.
By using a network to both generate input and another one to generate outputs there is no need for us to provide explicit labels every single time and so it can be classed as semi-supervised.
Linear Separability: whether features in data sets can be separated linearly (i.e. with a line)
Machine Learning: Machine-learning algorithms use statistics to find patterns in massive amounts of data. Being able to adapt to new inputs and make predictions is the crucial generalisation part of machine learning. Such technology has tremendous utility in financial crimes detection and analysis as financial transactions are increasing conducted and recorded in electronic form producing voluminous data.
Model: The representation (internal model) of a phenomenon that a Machine Learning algorithm has learnt. It learns this from the data it is shown during training. The model is the output you get after training an algorithm. For example, a decision tree algorithm would be trained and produce a decision tree model.
Neural Networks: Neural networks were vaguely inspired by the inner workings of the human brain. The nodes are sort of like neurons, and the network is sort of like the brain itself.
- RNN—Recurrent Neural Network
- Temporal data sets, time series
- CNN—Convolutional Neural Network
- Classification, vision etc
- AlexNet
- AtomNet
Regression: Regression is another form of supervised learning. The difference between classification and regression is that regression outputs a number rather than a class. Therefore, regression is useful when predicting number based problems like stock market prices, the temperature for a given day, or the probability of an event.
Regression Algorithms:
- Ordinary Least Squares Regression (OLSR)
- Linear Regression
- Logistic Regression
- Stepwise Regression
- Multivariate Adaptive Regression Splines (MARS)
- Locally Estimated Scatterplot Smoothing (LOESS)
- More Algorithm Types
Reinforcement Learning: A reinforcement algorithm learns by trial and error to achieve a clear objective. It tries out lots of different things and is rewarded (positive reinforcement) or penalized (negative reinforcement) depending on whether its behaviors help or hinder it from reaching its objective.
Supervised learning: In supervised learning the data is labeled to tell the machine exactly what patterns it should look for. The goal is to learn the mapping (the rules) between a set of inputs and outputs (relationship).
Supervised Learning Model can only imitate exactly what it was set up to learn. It is crucial to set up the model with reliable and unbiased examples.
Supervised learning algorithm types: Logistic Regression and the Back Propagation Neural Network
Semi-supervised learning: is a mix between supervised and unsupervised approaches. Allows the ability to mix together a small amount of labeled data with a much larger unlabeled dataset it reduces the burden of having enough labeled data.
Unsupervised learning: In unsupervised learning, the data has no labels. The machine just looks for whatever patterns it can find. Used in cyber security and financial crimes analysis. Can be regarded as a laissez-faire approach to knowledge discovery.
Unsupervised learning algorithm types: Apriori algorithm and K-Means
For Additional AI/ML related terms and definitions: