No 메신저봇R | 4.0 채팅 자동응답 봇 | No StarLight |
Security.ariaEncodeRaw()
value
를 ARIA 암호화한 값을 미가공 데이터(바이트 배열)로 반환합니다.
구문
Security.ariaEncodeRaw(key: String, value: String);
매개변수
key
ARIA 암호화를 위한 키
value
암호화할 값
반환값
byte[]
- value
를 ARIA 암호화한 값을 미가공 데이터(바이트 배열)로 반환합니다.
설명
Security.ariaEncode()
의 경우, value
를 ARIA 암호화한 값을 가공한 결과를 반환합니다. 한편, 해당 메소드의 반환값은 가공되지 않은 미가공 데이터(Raw data)인 바이트 배열을 반환합니다.
예를 들어, 문자열 "ariaKey"
를 ARIA 키로 삼아 문자열 "hello"
를 Security.ariaEncode()
로 암호화합니다.
let key = "ariaKey"; let value = "hello"; Security.ariaEncode(key, value); // -3574b5173ec4cc5348e317452f69d854
해당 반환값인 "-3574b5173ec4cc5348e317452f69d854"
는 가공된 데이터입니다. Security.ariaEncodeRaw()
를 이용해 미가공 데이터를 얻을 수 있습니다.
Security.ariaEncodeRaw(key, value); // [B@XXXXXXX
해당 반환값을 출력하면 실제로 위와 같은 결과가 될 것입니다. [B@XXXXXXX
에서 [B
는 바이트 배열을 의미하는 Smali code입니다. 해당 바이트 배열을 "가공"하면 Security.ariaEncode()
의 반환값과 같은 값을 얻을 수 있을 것입니다. 가공 과정은 다음과 같습니다:
- 바이트 배열을 정수로 변환
- 변환해서 얻은 정수를 16진수로 변환
let rawData = Security.ariaEncodeRaw(key, value); // 암호화 결과에 대한 미가공 데이터 let intData = new java.math.BigInteger(rawData); // 바이트 배열 형식의 미가공 데이터를 정수로 변환 intData.toString(16); // -3574b5173ec4cc5348e317452f69d854
이렇게 미가공 데이터를 가공해 값을 얻을 수 있습니다. 이 값은 실제로 Security.ariaEncode()
의 반환값과 같음을 알 수 있습니다.