You are on page 1of 4

Project Hydro Documentatie

API Documentatie voor Project Hydro - The Fintech Blockchain

Introductie
Hydro is de blockchain applicatie van Hydrogen, een API platform, waarmee
binnen enkele minuten geavanceerde fintech-apps kunnen worden gebouwd
door developers. Hydro maakt het mogelijk dat private financiële systemen
naadloos gebruik kunnen maken van de openbare blockchain.
Cloudapplicaties binnen het gehele financiële dienstverlening eco-systeem
kunnen profiteren van de kracht achter smart contracts door wereldwijd
veiligere, meer transparante en goedkopere financiële producten te
ontwikkelen.

Resources
Hydro Smart Contracts

Hydrogen Developer Signup

Project Hydro Details

Producten

Authenticatie - "Raindrop"
Het eerste product wat released wordt is de “Raindrop”, waarmee de blockchain kan
worden gebruikt als authenticatiemechanisme in de applicatie(s) van de ontwikkelaar.

Raindrop White Paper

Raindrop Intro Video


Aan De Slag
Registratie
U moet worden geregisteerd met Hydrogen om een ontwikkelaar te worden. Als uw
applicatie is goedgekeurd, zullen we u voorzien van een API gebruikersnaam en een key
welk benodigd is om aanvragen te doen aan de API.

Whitelisting
Elke gebruiker moet op de whitelist staan als u besluit om met deze service te
authentificeren. Dit kan de end user zijn of een andere ontwikkelaar welk uw platform/API
gebruikt.

Adressen op de whitelist worden zowel op de blockchain als in onze eigen database


opgeslagen. Elk adres is rechtstreeks gekoppeld aan uw API key.

Alle authenticatieverzoeken zullen de gebruikersnaam/key combinatie moeten bevatten


en een whitelisted hydroAddressId, welk eenmaal is aangemaakt bij de eerste
installatie met behulp van het volgende proces:

1. POST naar /whitelist/{address} met je API username/key combinatie, en het


Ethereum/Hydro gebruikersadres.

2. Ga terug naar hydroAddressId als het adres succesvol is ‘ge-whitelabeled‘

3. De gebruiker moet het hydroAddressId gebruiken voor alle volgende API


aanzoeken. Uit veiligheidoverwegingen, worden deze ID’s slechts één keer
gegenereerd. U dient deze te bewaren in een veilige database of sleutelbestand. Bij
verlies van het hydroAddressId, dient de gebruiker een nieuwe wallet op whitelist te
zetten en eventueel Hydro over te plaatsen.

Basis Url
https://api.hydrogenplatform.com/hydro/v1
Raindrop API Documentatie
Instructies
Nadat u bent geregistreerd in ons systeem is het tijd voor onze Authenticatie
API genaamd “Raindrop”. De authenticatie bestaat uit 3 stappen: Een
Challange Aanvragen, De “Raindrop” Uitvoeren, en De Definitieve Verificatie.

Stap Een: Een Challange Aanvragen


1. POST naar /challenge?hydroAddressId={hydroAddressId} met het juiste
hydroAddressId welk u ontvangt bij de initiële whitelisting. U moet ook de API
gebruikersnaam en key in the POST body opgeven. Het antwoord kan enige tijd duren,
de challenge moet worden opgeslagen op de Ethereum blockchain.

2. Deze POST zal een JSON object terug sturen met amount, challengeString en
partnerId. Zorg dat u deze gegevens opslaat omdat u deze nodig heeft voor de
“Raindrop”.

Stap Twee: De “Raindrop” Uitvoeren


De eigenaar van het Hydro adres welk de challange heeft uitgevoerd moet nu
authenticatie uitvoeren op het Hydro Smart Contract, welk moet plaatsvinden buiten de
Hydro API. Dit kan worden gedaan op een paar verschillende manieren:

Manueel door een service zoals de Ethereum Wallet



1. Open de Contracts tab en klik op "Watch Contract"

2. Voor het Contract Address gebruikt u:



Testnet: 0xEFb8Ba35C4C502EA9035e093F59925C4B5B61482

Mainnet: NOT YET DEPLOYED

3. Voor Json Interface gebruikt u:

Testnet: Testnet Gist



Mainnet: NOT YET DEPLOYED
4. Klik op het toegevoegde contract en selecteer aan de linkerkant in het dropdown
menu "Authenticate"

- Voor amount vult u de waarde in ontvangen vanuit de challange
- Voor Data vult u de challenge in ontvangen van de challenge
- Voor de Partner ID vult u partner_id in ontvangen van de challenge

5. Zodra dit is uitgevoerd is de “Raindrop” voltooid. De transactie zal mislukken als er een
waarde niet correct is.

Programmatisch via een service zoals Web3.js

Web3.js heeft uitgebreide documentatie over het opzetten van een Ethereum Smart
Contract.

https://github.com/ethereum/wiki/wiki/JavaScript-API

https://web3j.readthedocs.io/en/latest/

**Voorbeeld apps worden snel vrijgegeven voor gebruik bij ontwikkelaars door het Hydro-
team**

Stap Drie: Authenticatie


Nadat de “Raindrop” is voltooid en bevestigd in de blockchain, kan de slot authenticatie
worden uitgevoerd.

1. POST naar /authenticatehydroAddressId={hydroAddressId} met de


correcte hydroAddressId. U dient ook uw gebruikersnaam en key te verwerken in de
post body

2. Dit zal een Booleanse waarde terugsturen, welk de ontwikkelaars de mogelijkheid


geeft om de Hydro Auth als een one-factor van een multi-factor authenticatie te
gebruiken naast de token gebaseerde systemen zoals OAuth or JWT.

- Als het antwoord “true” is, zal het authenticatie proces worden voorgezet.

- Als het antwoord “false” is, zal het authenticatie proces falen.