Gradle

코로나바이러스가 한창이다. 영화 컨테이젼을 보다가 gradle의 뜻을 깨달았다. 영화 마지막에 U2 노래가 흐르더라. ... from the cradle to the grave~

JavaScript의 Math.random() 대체

막바지에 이른 프로젝트의 sparrow 분석 결과 검출된 보안상 취약점을 제거해야 하는데, JavaScript의 Math.random()이 문제였다. 보안 관련 이슈가 있어 보안 프로젝트에서 사용하는 것은 적절치 않아 보인다. 프로젝트에서 쓰이는 곳이 많아 예외 신청 하기도 쉽지 않아 대체 함수를 만들었다.

Math.random() 함수는 [0, 1) 범위(0을 포함하면서 1 보다는 작은)의 의사랜덤(pseudo-random) 수를 부동소수점(floating-point)으로 반환한다. window.crypto.getRandomValues() 메소드를 이용하여 0 ~ 4,294,967,295의 난수를 발생시킨 후 [0, 1) 범위를 갖도록 4,294,967,296로 나누었다.
window.crypto.getRandomValues(new Uint32Array(1))/4294967296
위의 함수로 대체한 후 sparrow 분석을 통과하였다.

이 블로그의 인기 게시물

아마존 오더블 오디오북을 mp3로 저장하기