흥미롭네요. 제 경우엔 JavaScript로 이 문제를 재현할 수 없었습니다. 마지막 메서드는 binary2hex 변환인데, 제가 이해한 바로는 base64 디코딩 결과는 바이너리 표현이 아니기 때문입니다.
JavaScript 관점에서 다음 자료들이 도움이 되었습니다:
https://www.npmjs.com/package/aybabtu
function fromBase62(s) {
var digits = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
var result = 0;
for (var i = 0; i < s.length; i++) {
var p = digits.indexOf(s[i]);
if (p < 0) {
return NaN;
}
result += p * Math.pow(digits.length, s.length - i - 1);
}
return result;
}
불행히도, 제공해주신 입력 문자열을 사용했을 때 bin2hex나 dec2hex 메서드도 도움이 되지 않았습니다.
관심 있는 분들을 위해 해당 문제에 대한 codesandbox를 만들었습니다. 제 입력 문자열에 대한 최종 값은 1인데, 이는 잘못된 결과입니다 ;(
https://codesandbox.io/s/kind-hypatia-dp5vh0?file=/src/index.js
감사합니다.