Le criptovalute, le ICO e il settore fin-tech hanno vissuto un vero e proprio boom dall'avvento del bitcoin. I suoi alti e bassi attraggono l'attenzione non solo dei trader, ma anche degli imprenditori che lo vedono come un'opportunità per creare un business di successo. In questo articolo, ti spiegheremo come creare uno scambio di criptovalute da zero e quali passaggi sono necessari per farlo.
Il bitcoin è aumentato di oltre il 10.000% dal suo lancio, rivoluzionando il mondo finanziario. Gli scettici iniziali hanno cambiato idea quando hanno visto i favolosi profitti dei primi investitori. Molte persone hanno fatto fortuna investendo in criptovalute: auto di lusso, yacht e uno stile di vita libero sono diventati simboli della nuova generazione digitale. Tuttavia, il mercato delle criptovalute è cambiato in modo significativo negli ultimi anni.
Successivamente, daremo un'occhiata ai componenti principali e alle sfide che potresti incontrare nel tuo percorso verso il lancio di una piattaforma di criptovaluta.
La situazione è cambiata negli ultimi sei mesi. L'Australia ha aperto i confini a tutte le criptovalute e ha consentito di pagare le bollette, comprese le utenze, tramite Bitcoin. Ora è un mezzo di pagamento legale. In molti negozi e bar di Brisbane, vedrai cartelli che confermano il pagamento tramite Bitcoin.
La situazione attorno al più grande exchange di criptovalute Binance ha fatto capire a tutti che Malta è uno dei posti migliori per fare affari nel settore delle criptovalute. Diamo un'occhiata a quali tipi di exchange esistono.
1. Exchange di criptovalute semplice (cripto-fiat) Questo modello è adatto ai principianti che non hanno esperienza con le criptovalute. Il vantaggio principale è un'interfaccia semplificata e l'assenza di strumenti complessi come ordini limit o stop-limit. L'utente scambia direttamente con l'amministratore, il che garantisce semplicità e velocità delle transazioni.
2. Scambio P2P È un modello che fornisce una piattaforma per acquirenti e venditori per interagire senza il coinvolgimento diretto dello scambio nelle transazioni. La piattaforma funge da intermediario, addebitando una commissione per ogni transazione.
3. Scambio decentralizzato (DEX) Questo tipo di scambio funziona direttamente con la blockchain, dando agli utenti il pieno controllo sui propri fondi. I DEX sono disponibili in tre varianti: on-chain (operanti sulla blockchain), off-chain (fuori dalla blockchain) e cross-chain (connessi a più blockchain).
4. Exchange con trading a margine Il trading a margine e la leva finanziaria sono diventati una nuova tendenza nel settore. Questi exchange consentono agli utenti di fare trading con fondi con leva finanziaria, aumentando sia i potenziali profitti che i rischi.
Come scegliere il modello giusto? La scelta dipende dalle risorse e dagli obiettivi aziendali:
Soluzioni combinate
Le tendenze moderne consentono di integrare le funzioni di diversi tipi di piattaforme. Ad esempio, crea uno scambio centralizzato con servizi P2P o aggiungi il trading a margine su DEX. Questo approccio non solo attrae più utenti, ma garantisce anche la competitività della piattaforma.
Lo sviluppo del settore delle criptovalute ha aperto nuovi mercati. Il NASDAQ ha lavorato per 40 anni e ha raggiunto un fatturato di 500 milioni di dollari al giorno, con oltre 10.000 dipendenti. Di quanti dipendenti hai bisogno per gestire o mantenere una piattaforma di trading?
Consiglio nella prima fase di assumere un team tecnico esternalizzato che abbia esperienza nello sviluppo e nel supporto di piattaforme di trading. Tu e i tuoi partner dovreste essere impegnati nel marketing e nella promozione del marchio.
Monolith. Questa è una piattaforma di trading con architettura all-in-one. Il modulo di portafogli, pagamenti, account e amministrazione sono sullo stesso server. L'implementazione di una piattaforma del genere richiede il minor tempo possibile. Ma presenta problemi con carichi elevati. Tecnicamente, tutte le funzionalità implementate possono essere su un server, ma questo server non sarà in grado di servire migliaia, per non parlare dei milioni di utenti.
Architettura microservizi. Presuppone che la piattaforma di trading sia composta da moduli indipendenti e facilmente gestibili. Ad esempio, il modulo di portafogli, il modulo di utenti, il motore di trading e così via. Ogni modulo si trova su un server dedicato separato, che gli consente di sopportare carichi elevati. Soprattutto se si utilizza il provider di hosting corretto. Va notato che il supporto e la modifica di tale architettura sono i più convenienti.
Ciascuna delle architetture sopra menzionate è adatta al rispettivo tipo di piattaforma. Monolith è la più efficace per le piccole piattaforme e per i grandi exchange: architettura microservice.
Va detto che la scalabilità della piattaforma di trading non è un evento comune. Sebbene sia possibile utilizzare il ridimensionamento orizzontale o verticale. Una maggiore produttività si ottiene aumentando la capacità del server, ottimizzando gli script, modificando l'architettura o ricodificando singoli moduli in un altro linguaggio di programmazione.
Dopo aver definito le funzioni chiave, puoi passare allo sviluppo dei componenti che costituiranno la base del tuo exchange. Il successo della piattaforma dipende in gran parte dalla scelta giusta delle tecnologie e dalla loro implementazione.
È ancora dibattuto se creare una versione mobile separata o limitarsi a un design adattivo. Tuttavia, una cosa è chiara: uno scambio di criptovalute dovrebbe essere ottimizzato per i dispositivi mobili. Con la mobilità globale degli utenti e la rapida crescita del traffico mobile, avere una versione mobile diventa non solo un vantaggio, ma una necessità per attrarre e fidelizzare i clienti.
Le tendenze moderne suggeriscono che l'interfaccia dovrebbe essere adattiva, flessibile e tenere conto delle esigenze sia dei principianti che dei trader esperti. In pratica, ciò significa che la piattaforma dovrebbe fornire un rapido accesso a tutte le funzioni chiave tramite dispositivi mobili, tra cui trading, monitoraggio delle quotazioni, gestione del portafoglio e prelievo.
Ogni modulo può essere un monolite, come detto sopra, da distribuire o da decentralizzare. Ci sono vantaggi e svantaggi per ogni tipo, è importante conoscere e ricordare i propri obiettivi. I moduli sono in genere costituiti da livelli che comunicano internamente tra loro. Al giorno d'oggi la comunicazione API più efficace è con il trasferimento dati in formato JSON. Questo è uno standard accettato che fornisce e accetta facilmente dati in quasi tutti i linguaggi di programmazione moderni.
Il più importante è il backend. Questo è il nucleo del sistema. Tutte le operazioni di trading e i calcoli passano attraverso script centrali. È molto importante nella prima fase prestare sufficiente attenzione alla progettazione dell'architettura del progetto.
Il frontend svolge il ruolo di shell in cui è racchiusa l'applicazione. Un'applicazione web, un'applicazione mobile per Android o iOS e persino un'applicazione nativa sul tuo macOS o Windows vengono eseguite sullo stesso core backend. Gli errori nell'architettura possono influenzare significativamente la velocità e abbassare il livello di sicurezza. Consigliamo di scegliere team con esperienza nella progettazione di sistemi simili.
Se parliamo di apprendimento della valuta fiat, ci sono due modi per integrare questa funzionalità. Puoi utilizzare bonifici bancari diretti in modalità manuale o Visa/Mastercard in modalità automatica. Il bonifico bancario è il modo più semplice da implementare. Ricevi denaro in modalità manuale. Gli utenti ricevono un account all'interno del sistema e inviano denaro direttamente al tuo conto bancario. Vedi l'importo e confermi il deposito dell'utente. I vantaggi di questo metodo sono la facilità di integrazione. Gli sviluppatori possono completare questa attività entro 1 settimana. Lo svantaggio è che devi sempre controllare il conto bancario per confermare il deposito dell'utente.
Naturalmente, puoi utilizzare le transazioni automatiche tramite Visa/Mastercard. Ma ci sono alcune difficoltà. Le transazioni automatiche vengono eseguite sul lato dei gateway di pagamento e molti di essi non supportano il lavoro con i sistemi di criptovaluta. Puoi connettere Paypal, Stripe, ma dopo un paio d'ore, il tuo account verrà bloccato o non supererà la verifica. Esistono diversi sistemi che ti consentono di connettere Visa e MasterCard per una transazione.
Ad esempio simplex.com, zotapay.com ecc. Ma di norma, hanno regole molto rigide. Se decidi di usare Visa o Mastercard, ti consigliamo di trovare un gateway di pagamento corretto e discutere i dettagli dell'integrazione.
La prima è scegliere un fornitore di liquidità. Il fornitore può fornire liquidità solo per determinate coppie di valute, ad esempio BTC/ETH, BTC/USD. Su coppie meno popolari come HKD/XRP, TRY/ETH, difficilmente troverai un fornitore, o la sua commissione sarà alta. Ogni fornitore ha la sua commissione. A volte coppie di valute diverse hanno una commissione diversa. Quando progetti la tua criptovaluta, devi tenere conto della loro commissione, in modo che la tua attività non diventi non redditizia.
Market Maker. In uno scambio di criptovaluta, i market maker sono bot di trading creati utilizzando l'intelligenza artificiale. Conclude accordi utilizzando un algoritmo speciale per ogni coppia di trading. I market maker hanno i seguenti vantaggi:
La società Merehead ha sviluppato i suoi market maker che vengono utilizzati con successo nei progetti dei nostri clienti.
Quale tipo di liquidità è meglio usare? Questa è una domanda difficile. Ognuno ha i suoi vantaggi. I fornitori di liquidità sono facili da usare e facili da integrare nella piattaforma. Ma di norma, la commissione della tua piattaforma sarà significativamente più alta rispetto ai tuoi concorrenti. Dal momento che devi compensare i costi del fornitore e aggiungere la tua commissione interna. Se hai intenzione di conquistare il mercato internazionale, aumentare la commissione è sbagliato. Dovrebbe essere minima e attrarre utenti. Inoltre, quando lavori con qualsiasi fornitore di liquidità, devi avere riserve di denaro interne. Senza di esse, questo metodo non funzionerà.
D'altra parte, abbiamo i market maker. Il loro potenziale è illimitato. Il market maker può essere utilizzato per qualsiasi coppia di valute. Può essere utilizzato come bot-bot o bot-utente. Nel primo caso, verrà creata un'emulazione di liquidità. Non c'è bisogno di avere fondi per il funzionamento della piattaforma. In un altro caso, il bot interagirà con gli utenti. Qui avrai bisogno di una scorta di fondi per condurre transazioni in modalità automatica. Se hai domande, puoi contattare il nostro esperto che ti spiegherà in dettaglio il principio di funzionamento e cosa è meglio usare nel tuo caso.
2. Supporto di applicazioni complesse
Alcuni sistemi aggiungono tipi di ordini più sofisticati, come stop-limit e stop-loss. Questi strumenti sono particolarmente utili per i trader esperti, consentendo loro di proteggere le proprie posizioni da improvvise fluttuazioni del mercato. Tuttavia, quando si progetta un exchange, è importante considerare il proprio pubblico di destinazione. Se nella fase di test 30-100 potenziali utenti non hanno familiarità con questi strumenti o non hanno intenzione di utilizzarli, potrebbe valere la pena concentrarsi su opzioni più semplici. Aiuterà a evitare di sovraccaricare l'interfaccia e a ridurre i rischi di creare un'esperienza utente complessa e confusa.
3. Prestazioni e scalabilità
Quando si progetta un motore di trading, i problemi di prestazioni e scalabilità sono ugualmente importanti. L'exchange deve supportare l'elaborazione istantanea di un gran numero di ordini, offrendo un'esperienza fluida per gli utenti anche con volumi di trading elevati. È importante implementare tecnologie che consentano al sistema di scalare rapidamente man mano che il numero di utenti e i volumi di trading crescono. Le soluzioni basate su tecnologie distribuite e architettura blockchain possono migliorare significativamente la stabilità del sistema.
Il pannello di amministrazione dovrebbe consentirti di delineare i ruoli per diversi dipendenti, ad esempio:
Responsabili KYC: con diritti di accesso limitati per elaborare solo i documenti degli utenti.
Moderatori: responsabili della comunicazione e del supporto degli utenti.
Partner: con accesso a tutte le funzioni amministrative, se necessario.
Questa distinzione ti consente di ridurre al minimo i rischi e gestire efficacemente il tuo personale.
Alcune criptovalute, come USDT, possono avere una commissione per il deposito di fondi. Anche il piazzamento di token a pagamento e l'utilizzo di market maker possono diventare un'ulteriore fonte di reddito per lo scambio.
L'esportazione di dati su dispositivi locali può essere un elemento importante per l'archiviazione di backup e l'analisi dei dati offline, aumentando la fiducia nella sicurezza della piattaforma.
KYC (know-your-customer) è la procedura per identificare il tuo cliente. È diventata famosa soprattutto per le sue piattaforme finanziarie ed è in collaborazione con lo Stato e altri strumenti finanziari. Devi averla incontrata su altri sistemi, solo che era chiamata in modo diverso.
La sua essenza è estremamente semplice: identificarti come utente. Conosci un vero nome, data di nascita, serie e numero di documenti di identità. Spesso si tratta di un passaporto internazionale, carta d'identità o patente di guida. Alcuni exchange di criptovalute richiedono un sistema di verifica utente multilivello.
Il secondo livello di solito richiede una bolletta. Consente alla piattaforma di identificare il tuo luogo di residenza. Un documento più vecchio di 6 mesi è già considerato non valido, poiché l'utente potrebbe cambiare il proprio luogo di residenza. Se affitti un appartamento, ma non sei in alcun modo elencato su quei documenti, sfortunatamente, non supererai questo livello.
Il terzo livello consiste nell'approvazione della lettera che lavori con il sito web. In questo caso, la piattaforma fornisce un modello di contratto in cui accetti di rispettare i termini di servizio.
Ma perché abbiamo bisogno di un'identificazione utente, un contratto e un luogo di residenza? Di norma, nel 90% dei casi questo è necessario per i servizi finanziari. Ogni exchange di criptovalute ha la possibilità di depositare e prelevare denaro. Il deposito è molto facile da integrare ed eseguire. Quando si prelevano fondi ci sono domande a una controparte. I sistemi di pagamento devono sapere a chi inviano denaro e che questa persona non è un terrorista o non partecipa ad azioni fraudolente.
Inoltre, l'identificazione dell'utente consente di determinare con maggiore precisione la posizione dell'utente. In questo modo è possibile limitare l'accesso alla piattaforma in modalità manuale. Ad esempio, residenti in Cina, Corea del Nord o Crimea. Questo potrebbe essere necessario se cooperate con sistemi di pagamento internazionali che non possono servire i residenti di determinati paesi o regioni. Se infrangete l'accordo, potreste essere bannati e disconnessi dal sistema finanziario.
Di norma, le restrizioni si trovano sulle piattaforme ICO, molto meno spesso sugli exchange. Per gli exchange non ci sono requisiti così rigorosi. Tuttavia, questa procedura è necessaria per ICO per non violare le regole SEC
KYC su uno scambio di criptovaluta ha 2 fasi. Innanzitutto, un utente con un account personale compila un modulo e carica i documenti per verificare se stesso. Dopodiché, questi documenti devono superare il controllo dell'identità.
L'integrazione con il servizio viene eseguita tramite API e tutti i dati vengono inviati in modalità automatica. La piattaforma di criptovaluta riceve solo la risposta sullo stato di verifica. Non c'è nulla di difficile. Ma come accennato in precedenza, il costo dipende dalla base di utenti e la commissione viene addebitata per la verifica di ogni utente.
Ad esempio, il sistema Jumio addebita $ 2-$ 3 per utente (a seconda dei documenti che devono essere controllati). Se devi controllare 100-200 utenti ogni giorno, questo servizio può svuotarti rapidamente le tasche. Aggiungi richieste ripetute qui se la prima volta la verifica fallisce (ad esempio, un documento di scarsa qualità). Noi di Merehead forniamo scambi di criptovaluta e abbiamo contattato circa 60 provider. Alcuni dei più economici prendono circa $ 0,6 per utente.
Ma non è tutto. C'è un rischio nascosto. I grandi sistemi guadagnano un sacco di soldi e hanno le loro regole del gioco. Alcuni servizi funzionano con un deposito. Il denaro viene speso per la verifica dell'utente. Sembra più o meno così:
Il provider richiede $ 50.000 di deposito. Ogni utente ti costa $ 2. Quindi, puoi controllare 25.000 utenti. Sembra che tutto vada bene, ma il denaro sul deposito è solo un po' di tempo.
Di solito sono 3 mesi. Se non li hai spesi durante questo periodo, vengono bruciati e devi pagare di nuovo. Tali spese nella prima fase di sviluppo dello scambio di criptovaluta influenzeranno seriamente questo. Pertanto, ti consigliamo di controllare tu stesso gli utenti e poi andare dal provider.
Tra i vantaggi quando lavori con un provider: più è grande, più grande è la base di utenti. Ciò significa che la verifica avverrà quasi istantaneamente se l'utente esiste già. Passiamo alla domanda successiva sulla creazione del nostro software di exchange di criptovalute.
Qualsiasi piattaforma che gestisce denaro reale o criptovaluta dovrebbe essere protetta da metodi moderni. Diamo un'occhiata ai metodi più popolari per hackerare uno scambio di criptovalute.
Consigliamo di escludere l'accesso ai fondi tramite il sistema di amministrazione. Potresti avere una domanda su come prelevare i tuoi soldi? La risposta è semplice: un archivio ibrido di portafogli, costruito sulla base dell'archiviazione a freddo. Non consigliamo di utilizzare un server offline o una rete interna (Intranet) che conterrà tutti i soldi. Questo non è un metodo efficace.
Al momento, una soluzione più comoda e flessibile è l'uso di portafogli hardware Ledger o Trezor. Sono entrambi moderni, protetti esternamente e internamente e supportano più valute (oltre 500). Le dimensioni del dispositivo ricordano un'unità USB. È facile da indossare e comodo. Inoltre, i portafogli sono generati da una frase seme, il che significa che se il portafoglio viene perso, puoi facilmente recuperarlo.
Utente hacker. L'utente è il primo bersaglio di qualsiasi intruso. Innanzitutto, gli hacker scelgono una vittima per molto tempo, perché è estremamente difficile hackerare tutti. Inoltre, in media, l'utente vende un piccolo budget fino a $ 1.000. L'obiettivo dell'hacker è trovare gli utenti più ricchi che hanno un saldo di oltre $ 10.000. Analizzano le informazioni disponibili in dettaglio. Se scrivi spesso sui social network e nella comunità crypto di investimenti, o addirittura pubblichi screenshot del tuo portafoglio, sei una grande preda degli hacker. Innanzitutto si riferisce a Reddit, perché la comunità crypto è una delle più grandi.
Assicurati sempre che non ci sia un anti-phishing e che sia abilitato il 2FA. Inoltre, controlla attentamente la posta elettronica per usare il 2FA. In genere, gli hacker iniziano a hackerare dalla posta elettronica.
Il più pericoloso è l'ingegneria sociale. Sfortunatamente, non esiste una cura per questo tipo di hacking e dipende completamente dalla disciplina e dall'attenzione dell'utente. Non inviare mai le tue password a nessuno (nemmeno dalla posta elettronica). È pericoloso anche inviare il tuo indirizzo e-mail, perché i dati su Internet sono quasi impossibili da eliminare. In questo caso, è meglio essere anonimi, non diffondere informazioni su te stesso e sul denaro. Il denaro ama il silenzio.
Consigliamo di avere funzioni per monitorare l'autorizzazione del dispositivo, la posizione, la durata della sessione e l'indirizzo IP. Con dati simili, l'amministratore o il sistema possono prevedere attività sospette dell'utente. E in questo caso, richiedere dati aggiuntivi per l'autorizzazione dall'utente.
Ingegneria sociale. Siamo esseri sociali e sentiamo il bisogno di comunicare, prendersi cura e qualsiasi altro sentimento umano. Molte persone percepiscono un'altra persona come buona a priori finché non dimostra il contrario. Questo è uno dei problemi più seri nell'ingegneria sociale. Il cosiddetto "uomo hacker". È spesso praticato da truffatori nel settore finanziario che richiedono dati personali della carta. Di solito i truffatori sono rappresentati da dipendenti di una banca o di un altro istituto finanziario in cui sono sicuri che l'utente sia registrato. Fai attenzione quando invii dati personali. Non lo consigliamo.
Processo fraudolento basato su autorizzazione. Il sistema di autorizzazioni per le parti amministrative è strutturato in modo tale da creare ruoli e dividere i compiti per ciascun dipendente. Ad esempio, nel sistema di amministrazione potrebbe essere un moderatore, un amministratore e un super-amministratore, un finanziatore, ecc. Inoltre, puoi creare qualsiasi altro utente (amministratore) con le tue autorizzazioni.
Quindi, c'è una probabilità di abuso di fiducia. Le autorizzazioni assegnate consentiranno all'amministratore di fornire dati all'aggressore per hackerare la piattaforma. Di norma, una piattaforma di criptovaluta accumula un sacco di soldi dagli utenti. Fai attenzione quando selezioni i dipendenti e deleghi loro le autorizzazioni.
Server di hacking. Questo è un problema serio e per evitarlo, è meglio non risparmiare sul provider. Non consigliamo di utilizzare i propri server o di utilizzare i servizi di piccoli provider. La sicurezza è fondamentale. Puoi prestare attenzione a provider come Amazon Web Services o Microsoft Azure. Oggi, l'ecosistema AWS è considerato uno dei migliori e offre molte opportunità: protezione da attacchi DDoS, servizio di posta, migrazione, servizi multimediali, firewall, ecc.
Processi dannosi. I programmi dannosi possono danneggiare la tua piattaforma di criptovaluta, ma come proteggerti in questo caso? Prima di tutto, pensiamo a come i processi o i programmi dannosi possono arrivare al tuo server.
Il modo più comune è caricare un programma dannoso utilizzando gli strumenti esterni della piattaforma. Se il sistema ti consente di caricare foto per KYC, allora sono sicuramente archiviate da qualche parte. Un'architettura bucata offre molte opportunità agli intrusi. Pertanto, lo scambio di criptovalute open source è estremamente pericoloso. Secondo l'analisi del 2015, l'88% degli scambi basati su codice open source o che utilizzano piattaforme di trading white label presentano buchi e vulnerabilità. L'aggiunta della convalida consente di evitare di caricare file dannosi, codici binari o programmi exe.
Inoltre, bisogna dire che alcuni programmi dannosi vengono caricati da freelance. Abbiamo avuto un caso in cui un cliente è venuto da noi con un problema di prestazioni del sistema. Dopo un'analisi dettagliata dei processi sul server, abbiamo notato un piccolo script di mining. Stava estraendo monete. Lo script ha funzionato per circa 2 mesi e ha solo rubato le prestazioni del server. Il cliente non ha subito danni significativi, ma fai attenzione e fidati dello sviluppo solo di team affidabili.
Vulnerabilità tramite sistemi o strumenti esterni. Il punto meno ovvio, ma è irto di pericoli non inferiori a quelli precedenti. Lo scambio può raramente funzionare come un'unità indipendente. Siamo realistici, per i giorni nostri, quasi nessuna piattaforma può funzionare in modo indipendente. Gateway di pagamento, integrazione del sistema di autorizzazione nei social network, integrazione di e-mail, chiamate e SMS, sistema CRM, servizio di supporto: queste sono solo le funzioni principali che utilizzano servizi esterni.
Se guardi più in profondità, puoi vedere l'integrazione di script di scambio bitcoin, CDN, l'integrazione di librerie e altri strumenti. Ognuno di questi sistemi o plug-in può essere hackerato, e quindi tutte le piattaforme su cui sono installati sono automaticamente in pericolo. C'è una soluzione? Solo alcune: segui gli aggiornamenti, scegli solo servizi affidabili e usa un numero limitato di strumenti esterni. Deve esserci una soluzione solida tra velocità e sicurezza.
Infine, sulla sicurezza. Attiva sempre 2FA, lascia che sia la tua nuova abitudine quando lavori con i soldi. Puoi usare Google o SMS. Non importa.
Ho parlato molto della sicurezza di uno scambio di criptovalute, fasi di sviluppo e architettura. Tuttavia, passiamo ora a costi e stime. Cosa serve per sviluppare una piattaforma di scambio di criptovalute? Posso farlo da solo o con un amico?