Determine tests coverage Where does the VASP.abi come from?
This is a reference implementation of a Java client for the OpenVASP standard.
Standardization is the process of implementing and developing technical standards based on the consensus of different parties that include firms, users, interest groups, standards organizations and governments.
- Wikipedia
VASP stands for Virtual Asset Service Provider. OpenVASP is an open protocol to implement FATF's travel rule for virtual assets.
The protocol facilitates robust compliance for VASPs, solely based on a set of principles, regardless of jurisdiction or virtual asset and without membership or registration with a centralized third-party.
The current implementation only includes the Whitepaper specs. OVIPs (OpenVASP Improvement Proposals) are currently not implemented, but they are in the roadmap. The OVIPs were under heavy changes since the inception of the Whitepaper. OVIPs were created at the end of current implementation.
Client exists as an initial working implementation (packaged as a .NET library). The
openvasp-csharp-client
repo is heavily outdated https://github.com/OpenVASP/openvasp-csharp-client
web3j
RPC-JSON client to connect to Ethereum.This is a Maven project that can be easily reused.
mvn compile
Compiled classes and generated source code will be under the target/
folder.
The Client uses the web3j
plugin to generate a Java stub to invoke the Smart Contracts.
The ABI (Application Binary Interface) of the contracts is located in:
src/main/resources/VASP.abi
And the generated stub is generated in
target/generated-sources/web3j/java/org/openvasp/client/contract/VASP.java
For more information on stub generation for smart contracts see http://docs.web3j.io/latest/command_line_tools/#generated-javakotlin-project-structure
As a Maven project, just run
mvn test
Originator/Beneficiary roles provided by java-host.
Ethereum server/geth (Golang) needed to provide Whisper & Smart Contracts.
Use of https://downloads.bouncycastle.org/fips-java/BC-FJA-UserGuide-1.0.2.pdf
The dependency tree contains this dependency as part of web3j
.
mvn dependency:tree
...
[INFO] +- org.web3j:core:jar:4.5.18:compile
[INFO] | +- org.web3j:abi:jar:4.5.18:compile
[INFO] | | \- org.web3j:utils:jar:4.5.18:compile
[INFO] | | \- org.bouncycastle:bcprov-jdk15on:jar:1.65:compile <<--
...
Want to help build this project? Check out our contributing documentation.
This project is licensed under the terms of the MIT License (see the file LICENSE).