Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- 단축키
- JavaScript
- GIT
- port
- netsh
- Windows 10
- find
- plugin
- Mac
- 줄바꿈 문자
- Source
- grep
- context
- IntelliJ
- ssh
- bash
- Windows
- profile
- xargs
- resource
- tomcat
- lsof
- maVen
- vscode
- 네트워크
- import
- VirtualBox
- Eclipse
- Quartz
- web.xml
Archives
- Today
- Total
develog
[openssl] openssl rand 로 secret key 생성하기 본문
32바이트(256비트) 키 생성하기
## 32바이트(256비트)의 랜덤 키를 생성하고 hex로 인코딩한다
$ openssl rand -hex 32
9037745160dd921355714c7334b7998389168d4e2d3632f2c9e08b8054c0940b
## 32바이트(256비트)의 랜덤 키를 생성하고 base64로 인코딩한다
$ openssl rand -base64 32
xg3HZBSqy6tR3Sjq2G8X+iu6uox3x98HLyHx8rt/mwk=
256바이트(2048비트) 키 생성하고 hex 로 인코딩
$ openssl rand -hex 256
08e924ea4d278452566f4a794d62bce8243961e7cf97debff48529100be5e402cbd6999cf36ec5885004f3473f09a9dfc99fd33d251a6f64d4bf0a1f59b4a0c91851e5f7e9241a0012057cacca564b29d2f4401e0b28f7c7090513f791899a3b8fa6e08e4098f36e9f3117803b7c8a10a639c88900de14e636000a328b7d402111f6788d357a6dd3754028e46e4593298842853d689ca13b08b0855ec4ce48db34ea8d828ec25f5c4143f2e255d0271775826fe7caf25888b4625e1ffd78bd7c8889dc6f2701edb69b5e8f1c7d94edb49a18372b0285bfa03264ee247556568d318333d6d9f21f1a6920fe0c76db6ef35669feb724d86db559534df21658f94d
256바이트(2048비트) 키 생성하고 base64 로 인코딩
## 여러 줄로 생성
$ openssl rand -base64 256
AQ5Ho7bwCwo36UB3TeRA9ZzNbFFvsA2X02HarDGUMXiC/WdSFfFHwfr4zdPkkJob
xReLz8/ciWuTHS0v1WCEIIfxNzkFJ00Y94yU/BlEyLJ4znbk/0x64pBFwPQ1jrSD
3Mh9Fa0w0tipQg6Y6sEgIFdXXWyYlj3YKU6ep97dzowhgNRHKeAnsJ/G5L4GVJ+R
kEoJz3VPfx44Lh9IBkS+2KjSNaPcMx89KO1sOytE39K+fn6cosRqz/52qp+HT6gw
G+Ld/ofh7Y07wZnYljlvwOU1gR8k4SfNeZ0Ddlxm0c8JLjt3R6e6lyYfkDTNaPKF
I+DOP1FZyLWwrSdlQaQ3BA==
## 한 줄로 생성
$ openssl rand 256 | base64
JDxN6tVI1ariXiq791z4X2NKeRlP/VJaEFT9ZfM3mkpiSk1hhB8oEPgW1hXbQPxVkvAzwvy9lbUlfqTWmfr+7EhtuRd/6bDlITupkzzw7K+U5ohG1qqkA0OnO569ZUZJL5sr5tl9sZsBgbTIEdv7y9RED5p9nL8CF5mK0wh3ajnd+hX4oJs1Vqlgof6+x/bX/Rc9QclHpyZLX5qqzELFWYOeyNxLO+LTkcVlA+PmKYs1s/Z9NYq6Bo7FJtOqMPVAmvdD3oPJqulVvg6ADI6lks/+yZo+CNytEAszQK4CSQ2IQpSfR4023QHDizYmHg3F9A/qfI58AoUz0VRBEbklFw==
## 한 줄로 생성
$ openssl rand -base64 256 | tr -d '\n'
Az8bmqEaIAvrd7mZD9/AChQC6z94ZddsrW2N4n2b9o0T4mPhV8syst06Eg2RBXsCodKOKMZdLhoCpVj/c6jUoSM+jPHwsUheN7NlWc0DvKWbaIN9MHT91vYoUknGku0YAVjrnxUox4PdApRE3cW2x2jpgva40lF8pv6Nj/9Wb5Xx6b5v0SkpzQu1qUrPtZ1qrfrvJ45Lmhkjp4ICK031fySKw5GsGnPzmM8ZyDPCA56uCOQx0jnEg24HcSemIx/9jbx6dEmeJPbyk3bfsod1yFBGqEyZi2WfBD4k+iQVMiKd7iDZhzBjAI/XhsdcXRpC+fR8IS2Weq5VqKKkH/bL1w==
bash 에서 명령어 한 줄로 여러 개 생성하기
$ for i in {1..10}; do openssl rand --base64 32; done
base64 키 바이트 길이 확인
echo $(openssl rand -base64 32) | base64 -d | wc -c
echo $(openssl rand -base64 16) | base64 -d | wc -c
openssl 명령어 사용법
$ openssl rand --help
Usage: rand [options] num[K|M|G|T]
General options:
-help Display this summary
-engine val Use engine, possibly a hardware device
Output options:
-out outfile Output file
-base64 Base64 encode output
-hex Hex encode output
Random state options:
-rand val Load the given file(s) into the random number generator
-writerand outfile Write random data to the specified file
Provider options:
-provider-path val Provider load path (must be before 'provider' argument if required)
-provider val Provider to load (can be specified multiple times)
-propquery val Property query used when fetching algorithms
Parameters:
num Number of bytes to generate
Comments