Dart 에서 encryption hash 값 구하기
2019. 6. 16. 13:31ㆍ컴퓨터
(나중에 내가 다시보기위한 노트에 가까운 글)
JS, PHP등에서는 sha 512등의 encryption 해쉬값을 구하는것이 매우 단순했다.
그냥 라이브러리 하나 불러온뒤
sha512(string)
하나만 해주면 되는데,
Dart에서는 다소 이해를 해야 같은 결과값을 불러올 수 있어 별 생각없이 넘어갈 문제를
오래끌게 되어 간단히 정리한다.
우선, 현재로는 Dart 2.0지원하는 업데이트 되는 crypto라이브러리가 "pointycastle"이라는 다소 직관적이지 않은 이름의 라이브러리이다.
(여기서부터 갑자기 불안...)
https://pub.dev/packages/pointycastle
여기서 필요한것 encryption algo만 가져올수도 있고, 전체를 다 불러올수도있고. (이것은 documentation에 쉽게 나와있음)
같은 sha512로 string에 대한 hash값을 구하는 코드 예제는 다음과 같다 :
import 'dart:typed_data';
import 'package:convert/convert.dart'; // convert라는 dartpkg. (https://pub.dev/packages/convert)
import 'package:pointycastle/api.dart';
var uint8List = Uint8List.fromList('string'.codeUnits);
var sha512 = Digest("SHA-512").process(uint8List);
var hashStr = hex.encode(sha512); //16진수표기법으로 hash값을 변형하여 string으로 표현
누군가에게 도움이 되길 바라며...
'컴퓨터' 카테고리의 다른 글
Flutter easy_localization package사용법 (0) | 2020.03.28 |
---|---|
OpenCV4를 이용, MacOS app만들기 (catalina) (0) | 2019.10.31 |
Create-react-app + axios 이용시 CORS 로인한 session 유지 문제 (0) | 2018.12.30 |
Airpod(에어팟)은 aptX를 지원하지 않는다 (4) | 2017.11.26 |
우리은행에서는 아이폰 X 얼굴인식(Face ID)을 지원해서 다행이다 (2) | 2017.11.26 |