목차
이전 단어
crypto
MD5
Hmac
AES
Diffie-Hellman
웹 프론트엔드 JS 튜토리얼 nodeJS의 암호화폐 암호화 방식에 대한 자세한 설명

nodeJS의 암호화폐 암호화 방식에 대한 자세한 설명

Jun 24, 2017 pm 02:49 PM
Crypto javascript nodejs 암호화

이전 단어

 암호화 모듈은 HTTP 또는 HTTPS 연결 중에 보안 자격 증명을 캡슐화하는 방법을 제공합니다. OpenSSL의 해시, hmac, 암호화(cipher), 복호화(decipher), 서명(sign) 및 확인(verify) 방법의 캡슐화도 제공됩니다. 이 글에서는 crypto

crypto

【crypto.setEngine(engine[, flags])】

  OpenSSL 일부/전체 기능에 대한 엔진 로드 및 설정(매개변수 플래그에 따라 설정)에 대해 자세히 소개합니다.

 engine은 ID이거나 엔진 공유 라이브러리에 대한 경로일 수 있습니다.

 flags는 선택적 매개변수이며 기본값은 ENGINE_METHOD_ALL이며 다음 매개변수 중 하나 이상을 조합할 수 있습니다(상수로 정의됨)

ENGINE_METHOD_RSA
ENGINE_METHOD_DSA
ENGINE_METHOD_DH
ENGINE_METHOD_RAND
ENGINE_METHOD_ECDH
ENGINE_METHOD_ECDSA
ENGINE_METHOD_CIPHERS
ENGINE_METHOD_DIGESTS
ENGINE_METHOD_STORE
ENGINE_METHOD_PKEY_METH
ENGINE_METHOD_PKEY_ASN1_METH
ENGINE_METHOD_ALL
ENGINE_METHOD_NONE
로그인 후 복사

【crypto.getCiphers()】

배열을 반환합니다. 지원되는 암호화 알고리즘 이름

 crypto = require('crypto'
로그인 후 복사

【crypto.getCiphers()】

  지원되는 해시 알고리즘 이름의 배열을 반환합니다.

var crypto = require('crypto');
console.log(crypto.getHashes());//[ 'DSA',  'DSA-SHA',  'DSA-SHA1',  'DSA-SHA1-old',  'RSA-MD4',  'RSA-MD5',  'RSA-MDC2',  'RSA-RIPEMD160',  'RSA-SHA',  'RSA-SHA1',  'RSA-SHA1-2',  'RSA-SHA224',  'RSA-SHA256',  'RSA-SHA384',  'RSA-SHA512',  'dsaEncryption',  'dsaWithSHA',  'dsaWithSHA1',  'dss1',  'ecdsa-with-SHA1',  'md4',  'md4WithRSAEncryption',  'md5',  'md5WithRSAEncryption',  'mdc2',  'mdc2WithRSA',  'ripemd',  'ripemd160',  'ripemd160WithRSA',  'rmd160',  'sha',  'sha1',  'sha1WithRSAEncryption',  'sha224',  'sha224WithRSAEncryption',  'sha256',  'sha256WithRSAEncryption',  'sha384',  'sha384WithRSAEncryption',  'sha512',  'sha512WithRSAEncryption',  'shaWithRSAEncryption',  'ssl2-md5',  'ssl3-md5',  'ssl3-sha1',  'whirlpool' ]
로그인 후 복사

【crypto.getCurves()】

  지원되는 타원 곡선 이름의 배열을 반환합니다.

var crypto = require('crypto');
console.log(crypto.getCurves());//[ 'Oakley-EC2N-3',  'Oakley-EC2N-4',  'brainpoolP160r1',  'brainpoolP160t1',  'brainpoolP192r1',  'brainpoolP192t1',  'brainpoolP224r1',  'brainpoolP224t1',  'brainpoolP256r1',  'brainpoolP256t1',  'brainpoolP320r1',  'brainpoolP320t1',  'brainpoolP384r1',  'brainpoolP384t1',  'brainpoolP512r1',  'brainpoolP512t1',  'c2pnb163v1',  'c2pnb163v2',  'c2pnb163v3',  'c2pnb176v1',  'c2pnb208w1',  'c2pnb272w1',  'c2pnb304w1',  'c2pnb368w1',  'c2tnb191v1',  'c2tnb191v2',  'c2tnb191v3',  'c2tnb239v1',  'c2tnb239v2',  'c2tnb239v3',  'c2tnb359v1',  'c2tnb431r1',  'prime192v1',  'prime192v2',  'prime192v3',  'prime239v1',  'prime239v2',  'prime239v3',  'prime256v1',  'secp112r1',  'secp112r2',  'secp128r1',  'secp128r2',  'secp160k1',  'secp160r1',  'secp160r2',  'secp192k1',  'secp224k1',  'secp224r1',  'secp256k1',  'secp384r1',  'secp521r1',  'sect113r1',  'sect113r2',  'sect131r1',  'sect131r2',  'sect163k1',  'sect163r1',  'sect163r2',  'sect193r1',  'sect193r2',  'sect233k1',  'sect233r1',  'sect239k1',  'sect283k1',  'sect283r1',  'sect409k1',  'sect409r1',  'sect571k1',  'sect571r1',  'wap-wsg-idm-ecid-wtls1',  'wap-wsg-idm-ecid-wtls10',  'wap-wsg-idm-ecid-wtls11',  'wap-wsg-idm-ecid-wtls12',  'wap-wsg-idm-ecid-wtls3',  'wap-wsg-idm-ecid-wtls4',  'wap-wsg-idm-ecid-wtls5',  'wap-wsg-idm-ecid-wtls6',  'wap-wsg-idm-ecid-wtls7',  'wap-wsg-idm-ecid-wtls8',  'wap-wsg-idm-ecid-wtls9' ]
로그인 후 복사

MD5

MD5는 모든 데이터에 "서명"을 제공하는 데 일반적으로 사용되는 해싱 알고리즘입니다. 이 서명은 일반적으로 16진수 문자열로 표시됩니다.

[crypto.createHash(algorithm)]

 해시 다이제스트를 생성하기 위해 지정된 알고리즘을 사용하여 해시 객체를 생성하고 반환합니다.

 매개변수 알고리즘은 플랫폼의 OpenSSL 버전에서 지원하는 알고리즘에 따라 다릅니다. 예를 들어 'sha1', 'md5', 'sha256', 'sha512' 등

【hash.update(data[, input_encoding])】

  데이터를 기반으로 해시 내용을 업데이트하며 인코딩 방법은 다음과 같습니다. input_encoding에 의해 결정됩니다. 'utf8', 'ascii' 또는 'binary'가 있습니다. 값이 전달되지 않으면 기본 인코딩은 'utf8'입니다. 데이터가 버퍼인 경우 input_encoding이 무시됩니다.

 스트리밍 데이터이기 때문에 다른 데이터로 여러번 호출될 수 있습니다.

【hash.digest([encoding])】

  수신 데이터의 해시 다이제스트를 계산합니다. 인코딩은 'hex', 'binary' 또는 'base64'일 수 있으며, 인코딩을 지정하지 않으면 버퍼가 반환됩니다.

 [참고] Digest()를 호출한 후에는 해시 객체를 사용할 수 없습니다.

var crypto = require('crypto');var hash = crypto.createHash('md5');// 可任意多次调用update():hash.update('Hello, world!');
hash.update('Hello, nodejs!');

console.log(hash.digest('hex')); // 7e1977739c748beac0c0fd14fd26a544
로그인 후 복사

Hmac

 Hmac 알고리즘도 해싱 알고리즘인데, MD5나 SHA1 같은 해싱 알고리즘을 활용할 수 있습니다. 차이점은 Hmac에도 키가 필요하다는 것입니다.

[crypto.createHmac(algorithm, key)]

  hmac 객체를 생성 및 반환하고 지정된 알고리즘과 키를 사용하여 hmac 맵을 생성합니다.

 읽고 쓸 수 있는 스트림 스트림입니다. 작성된 데이터는 hmac를 계산하는 데 사용됩니다. 스트림 쓰기가 완료되면 read() 메서드를 사용하여 계산된 값을 가져옵니다. 이전 업데이트 및 다이제스트 방법도 지원됩니다.

 매개변수 알고리즘은 플랫폼의 OpenSSL 버전에서 지원하는 알고리즘에 따라 다릅니다. 위의 createHash를 참조하세요. 그 키는 hmac 알고리즘에서 사용되는 키입니다

【hmac.update(data)】

  데이터를 기반으로 hmac 객체를 업데이트합니다. 스트리밍 데이터이기 때문에 새로운 데이터로 여러 번 호출될 수 있습니다.

【hmac.digest([encoding])】

 들어오는 데이터의 hmac 값을 계산합니다. 인코딩은 'hex', 'binary' 또는 'base64'일 수 있으며, 인코딩을 지정하지 않으면 버퍼가 반환됩니다.

 [참고] Digest()

var crypto = require('crypto');var hmac = crypto.createHmac('sha256', 'match');

hmac.update('Hello, world!');
hmac.update('Hello, nodejs!');//e82a58066cae2fae4f44e58be1d589b66a5d102c2e8846d796607f02a88c1649console.log(hmac.digest('hex'));
로그인 후 복사
를 호출한 후에는 hmac 객체를 사용할 수 없습니다.

 

AES

  AES是一种常用的对称加密算法,加解密都用同一个密钥。crypto模块提供了AES支持,但是需要自己封装好函数,便于使用:

【crypto.createCipher(algorithm, password)】

  使用传入的算法和秘钥来生成并返回加密对象。

  algorithm 取决于 OpenSSL,例如'aes192'等。password 用来派生 key 和 IV,它必须是一个'binary' 编码的字符串或者一个buffer。

  它是可读写的流 stream 。写入的数据来用计算 hmac。当写入流结束后,使用 read() 方法来获取计算后的值。也支持老的update 和 digest 方法。

【cipher.update(data[, input_encoding][, output_encoding])】

  根据 data 来更新哈希内容,编码方式根据 input_encoding 来定,有 'utf8', 'ascii' or 'binary'。如果没有传入值,默认编码方式是'binary'。如果data 是 Buffer,input_encoding 将会被忽略。

  output_encoding 指定了输出的加密数据的编码格式,它可用是 'binary', 'base64' 或 'hex'。如果没有提供编码,将返回 buffer 。

  返回加密后的内容,因为它是流式数据,所以可以使用不同的数据调用很多次。

【cipher.final([output_encoding])】

  返回加密后的内容,编码方式是由 output_encoding 指定,可以是 'binary', 'base64' 或 'hex'。如果没有传入值,将返回 buffer。

  [注意]cipher 对象不能在 final() 方法之后调用。

var crypto = require('crypto');function aesEncrypt(data, key) {
    const cipher = crypto.createCipher('aes192', key);var crypted = cipher.update(data, 'utf8', 'hex');
    crypted += cipher.final('hex');return crypted;
}var data = 'Hello, this is a secret message!';var key = 'Password!';var encrypted = aesEncrypt(data, key);//8a944d97bdabc157a5b7a40cb180e713f901d2eb454220d6aaa1984831e17231f87799ef334e3825123658c80e0e5d0cconsole.log(encrypted);
로그인 후 복사

【crypto.createDecipher(algorithm, password)】

  根据传入的算法和密钥,创建并返回一个解密对象。这是 createCipher() 的镜像

【decipher.update(data[, input_encoding][, output_encoding])】

  使用参数 data 更新需要解密的内容,其编码方式是 'binary','base64' 或 'hex'。如果没有指定编码方式,则把 data 当成 buffer 对象。

  如果 data 是 Buffer,则忽略 input_encoding 参数。

  参数 output_decoding 指定返回文本的格式,是 'binary', 'ascii' 或 'utf8' 之一。如果没有提供编码格式,则返回 buffer。

【decipher.final([output_encoding])】

  返回剩余的解密过的内容,参数 output_encoding 是 'binary', 'ascii' 或 'utf8',如果没有指定编码方式,返回 buffer。

  [注意]decipher对象不能在 final() 方法之后使用。

var crypto = require('crypto');function aesDecrypt(encrypted, key) {
    const decipher = crypto.createDecipher('aes192', key);var decrypted = decipher.update(encrypted, 'hex', 'utf8');
    decrypted += decipher.final('utf8');return decrypted;
}var data = 'Hello, this is a secret message!';var key = 'Password!';var encrypted = '8a944d97bdabc157a5b7a40cb180e713f901d2eb454220d6aaa1984831e17231f87799ef334e3825123658c80e0e5d0c';var decrypted = aesDecrypt(encrypted, key);
console.log(decrypted);//Hello, this is a secret message!
로그인 후 복사

  可以看出,加密后的字符串通过解密又得到了原始内容。

  注意到AES有很多不同的算法,如aes192aes-128-ecbaes-256-cbc等,AES除了密钥外还可以指定IV(Initial Vector),不同的系统只要IV不同,用相同的密钥加密相同的数据得到的加密结果也是不同的。加密结果通常有两种表示方法:hex和base64,这些功能Nodejs全部都支持,但是在应用中要注意,如果加解密双方一方用Nodejs,另一方用Java、PHP等其它语言,需要仔细测试。如果无法正确解密,要确认双方是否遵循同样的AES算法,字符串密钥和IV是否相同,加密后的数据是否统一为hex或base64格式

【crypto.createCipheriv(algorithm, key, iv)】

  创建并返回一个加密对象,用指定的算法,key 和 iv。

  algorithm 参数和 createCipher() 一致。key 在算法中用到.iv 是一个initialization vector.

  key 和 iv 必须是 'binary' 的编码字符串或buffers.

【crypto.createDecipheriv(algorithm, key, iv)】

  根据传入的算法,密钥和 iv,创建并返回一个解密对象。这是 createCipheriv() 的镜像。

const crypto = require('crypto');function aesEncryptiv(data, key,iv) {
    const cipher = crypto.createCipher('aes192', key, iv);var crypted = cipher.update(data, 'utf8', 'hex');
    crypted += cipher.final('hex');return crypted;
}function aesDecryptiv(encrypted, key,iv) {
    const decipher = crypto.createDecipher('aes192', key, iv);var decrypted = decipher.update(encrypted, 'hex', 'utf8');
    decrypted += decipher.final('utf8');return decrypted;
}var data = 'Hello, this is a secret message!';var key = 'Password!';var iv = 'match';var encrypted = aesEncryptiv(data, key, iv);var decrypted = aesDecryptiv(encrypted, key, iv);//Hello, this is a secret message!console.log(data);//8a944d97bdabc157a5b7a40cb180e713f901d2eb454220d6aaa1984831e17231f87799ef334e3825123658c80e0e5d0cconsole.log(encrypted);//Hello, this is a secret message!console.log(decrypted);
로그인 후 복사

 

Diffie-Hellman

【crypto.createDiffieHellman(prime[, prime_encoding][, generator][, generator_encoding])】

  使用传入的 prime 和 generator 创建 Diffie-Hellman 秘钥交互对象。

  generator 可以是数字,字符串或Buffer。如果没有指定 generator,使用 2

  prime_encoding 和 generator_encoding 可以是 'binary', 'hex', 或 'base64'。

  如果没有指定 prime_encoding, 则 Buffer 为 prime。如果没有指定 generator_encoding ,则 Buffer 为 generator。

【diffieHellman.generateKeys([encoding])】

  生成秘钥和公钥,并返回指定格式的公钥。这个值必须传给其他部分。编码方式: 'binary', 'hex', 或 'base64'。如果没有指定编码方式,将返回 buffer。

【diffieHellman.getPrime([encoding])】

  用参数 encoding 指明的编码方式返回 Diffie-Hellman 质数,编码方式为: 'binary', 'hex', 或 'base64'。 如果没有指定编码方式,将返回 buffer。

【diffieHellman.getGenerator([encoding])】

  用参数 encoding 指明的编码方式返回 Diffie-Hellman 生成器,编码方式为: 'binary', 'hex', 或 'base64'. 如果没有指定编码方式 ,将返回 buffer。

【diffieHellman.computeSecret(other_public_key[, input_encoding][, output_encoding])】

  使用 other_public_key 作为第三方公钥来计算并返回共享秘密(shared secret)。秘钥用input_encoding 编码。编码方式为:'binary', 'hex', 或 'base64'。如果没有指定编码方式 ,默认为 buffer。

  如果没有指定返回编码方式,将返回 buffer。

DH算法

  DH算法是一种密钥交换协议,它可以让双方在不泄漏密钥的情况下协商出一个密钥来。DH算法基于数学原理,比如小明和小红想要协商一个密钥,可以这么做:

  1、小明先选一个素数和一个底数,例如,素数p=23,底数g=5(底数可以任选),再选择一个秘密整数a=6,计算A=g^a mod p=8,然后大声告诉小红:p=23,g=5,A=8;

  2、小红收到小明发来的p,g,A后,也选一个秘密整数b=15,然后计算B=g^b mod p=19,并大声告诉小明:B=19;

  3、小明自己计算出s=B^a mod p=2,小红也自己计算出s=A^b mod p=2,因此,最终协商的密钥s为2。

  在这个过程中,密钥2并不是小明告诉小红的,也不是小红告诉小明的,而是双方协商计算出来的。第三方只能知道p=23,g=5,A=8,B=19,由于不知道双方选的秘密整数a=6和b=15,因此无法计算出密钥2。

  用crypto模块实现DH算法如下:

var crypto = require('crypto');// xiaoming's keys:var ming = crypto.createDiffieHellman(512);var ming_keys = ming.generateKeys();var prime = ming.getPrime();var generator = ming.getGenerator();//Prime: 8df777257625c66821af697652f28e93af05b9f779af919111b89816faa11c36fcf9df04c76811471a6099800213c4fe8e3fbec8d2f90bd00795e4b7fd241603console.log('Prime: ' + prime.toString('hex'));//Generator: 02console.log('Generator: ' + generator.toString('hex'));// xiaohong's keys:var hong = crypto.createDiffieHellman(prime, generator);var hong_keys = hong.generateKeys();// exchange and generate secret:var ming_secret = ming.computeSecret(hong_keys);var hong_secret = hong.computeSecret(ming_keys);//Secret of Xiao Ming: 4237157ab4c9211f78ffdb67d127d749cec91780d594b81a7e75f1fb591fecb84f33ae6591e1edda4bc9685b503010fe8f9928c6ed69e4ff9fdb44adb9ba1539console.log('Secret of Xiao Ming: ' + ming_secret.toString('hex'));//Secret of Xiao Hong: 4237157ab4c9211f78ffdb67d127d749cec91780d594b81a7e75f1fb591fecb84f33ae6591e1edda4bc9685b503010fe8f9928c6ed69e4ff9fdb44adb9ba1539console.log('Secret of Xiao Hong: ' + hong_secret.toString('hex'))
로그인 후 복사

   [注意]每次输出都不一样,因为素数的选择是随机的。

위 내용은 nodeJS의 암호화폐 암호화 방식에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

차세대 Meme Coin Supercycle: 스포츠 및 Meme 문화의 헤비급 챔피언인 XYZVerse(XYZ)를 만나보세요 차세대 Meme Coin Supercycle: 스포츠 및 Meme 문화의 헤비급 챔피언인 XYZVerse(XYZ)를 만나보세요 Nov 03, 2024 pm 09:36 PM

2024년 마지막 분기에 암호화폐 세계에 기대감이 고조되면서 투자자들은 놀라운 수익을 제공할 수 있는 잠재력을 지닌 디지털 자산을 찾고 있습니다. 성공적인 암호화 수치에서 얻은 통찰력은 특정 토큰이 만료될 수 있음을 나타냅니다.

Gate.io 설치 패키지를 무료로 받으십시오 Gate.io 설치 패키지를 무료로 받으십시오 Feb 21, 2025 pm 08:21 PM

Gate.io는 사용자가 설치 패키지를 다운로드하여 장치에 설치하여 사용할 수있는 인기있는 cryptocurrency 교환입니다. 설치 패키지를 얻는 단계는 다음과 같습니다. Gate.io의 공식 웹 사이트를 방문하고 "다운로드"를 클릭하고 해당 운영 체제 (Windows, Mac 또는 Linux)를 선택하고 컴퓨터에 설치 패키지를 다운로드하십시오. 설치 중에 항 바이러스 소프트웨어 또는 방화벽을 일시적으로 비활성화하여 원활한 설치를 보장하는 것이 좋습니다. 완료 후 사용자는 GATE.IO 계정을 만들려면 사용을 시작해야합니다.

암호화폐 인플루언서 Cobie, Pump.fun을 통해 발행된 Solana(SOL) Meme 코인 공급량의 60% 소각 암호화폐 인플루언서 Cobie, Pump.fun을 통해 발행된 Solana(SOL) Meme 코인 공급량의 60% 소각 Nov 09, 2024 am 04:14 AM

Cobie로 더 널리 알려진 Jordan Fish는 11월 8일 금요일에 Pump.fun을 통해 발행된 Solana(SOL) 밈 코인 공급량의 60%를 소각했습니다.

통화 서클의 상위 10 개 교환 목록 통화 서클의 상위 10 개 교환 목록 Feb 21, 2025 pm 10:18 PM

통화 서클의 상위 10 개 거래소는 거래량으로 순위가 매겨집니다. Binance Ouyihuobi ftxkrakencoinbasegeminibitfinexbybitgate.io.

상위 10 개의 가상 통화 거래 앱 중 가장 좋은 것은 무엇입니까? 상위 10 개의 가상 통화 거래 앱 중 가장 좋은 것은 무엇입니까? Mar 19, 2025 pm 05:00 PM

상위 10 개의 가상 통화 거래 앱 순위 : 1. OKX, 2. Binance, 3. Gate.io, 4. Kraken, 5. Huobi, 6. Coinbase, 7. Kucoin, 8. Crypto.com, 9. Bitfinex, 10. Gemini. 플랫폼을 선택할 때 보안, 유동성, 처리 비용, 통화 선택, 사용자 인터페이스 및 고객 지원을 고려해야합니다.

비트 코인 구매 플랫폼 순위 (2025 년 최신 업데이트) 비트 코인 구매 플랫폼 순위 (2025 년 최신 업데이트) Feb 21, 2025 pm 07:12 PM

디지털 자산 공간에서 비트 코인은 기대가 높은 암호 화폐로서 거래에 대한 수요가 증가하고 있습니다. 이 기사는 세계 10 대 비트 코인 트레이딩 플랫폼을 탐색하고 포괄적 인 순위 목록을 제공하며 독자가 거래 요구에 가장 적합한 플랫폼을 선택하도록 도와줍니다.

Ouyi OK Exchange의 공식 입구에 로그인하십시오 Ouyi OK Exchange의 공식 입구에 로그인하십시오 Feb 21, 2025 pm 05:33 PM

세계 최고의 암호 화폐 거래 플랫폼 중 하나 인 Ouyi Exchange는 사용자에게 안전하고 안정적인 디지털 자산 거래 서비스를 제공합니다. 공식 포털 연결은 플랫폼에 직접 액세스하여 자산 관리, 거래 및 투자를 편리하고 효율적으로 만들 수 있습니다. Ouyi는 고급 기술 및 위험 관리 조치를 채택함으로써 안전하고 안정적인 거래 환경을 조성하여 사용자가 자신감을 가지고 거래하고 디지털 자산 세계의 편의성과 이점을 누릴 수 있도록 노력하고 있습니다.

10 대 디지털 가상 통화 거래 플랫폼 순위 2025 최신 10 대 디지털 가상 통화 거래 플랫폼 순위 2025 최신 Mar 21, 2025 pm 03:27 PM

2025 : 1. Okx, 2. Binance, 3. Gate.io, 4. Kraken, 5. Huobi Global, 6. Coinbase, 7. Kucoin, 8. Crypto.com, 9. Bitfinex, 10. Mexc Global. 이 플랫폼은 거래량, 사용자 경험, 보안 및 통화 풍부함으로 인해 최고로 선정되었습니다.

See all articles