@@ -17,9 +17,8 @@ msgstr ""
17
17
"Generated-By : Babel 2.17.0\n "
18
18
19
19
#: ../../library/secrets.rst:2
20
- #, fuzzy
21
20
msgid ":mod:`!secrets` --- Generate secure random numbers for managing secrets"
22
- msgstr ":mod:`secrets` --- 비밀 관리를 위한 안전한 난수 생성"
21
+ msgstr ":mod:`! secrets` --- 비밀 관리를 위한 안전한 난수 생성"
23
22
24
23
#: ../../library/secrets.rst:16
25
24
msgid "**Source code:** :source:`Lib/secrets.py`"
@@ -67,19 +66,16 @@ msgstr ""
67
66
":class:`random.SystemRandom`\\ 를 참조하십시오."
68
67
69
68
#: ../../library/secrets.rst:47
70
- #, fuzzy
71
69
msgid "Return a randomly chosen element from a non-empty sequence."
72
70
msgstr "비어있지 않은 시퀀스로부터 무작위로 선택된 요소를 돌려줍니다."
73
71
74
72
#: ../../library/secrets.rst:51
75
- #, fuzzy
76
73
msgid "Return a random int in the range [0, *exclusive_upper_bound*)."
77
- msgstr "범위 [0, *n *)에서 무작위 int를 돌려줍니다."
74
+ msgstr "범위 [0, *exclusive_upper_bound *)에서 무작위 int를 돌려줍니다."
78
75
79
76
#: ../../library/secrets.rst:55
80
- #, fuzzy
81
77
msgid "Return a non-negative int with *k* random bits."
82
- msgstr "*k* 무작위 비트를 가지는 int를 돌려줍니다."
78
+ msgstr "*k* 무작위 비트를 가지는 음이 아닌 int를 돌려줍니다."
83
79
84
80
#: ../../library/secrets.rst:59
85
81
msgid "Generating tokens"
@@ -107,6 +103,8 @@ msgid ""
107
103
">>> token_bytes(16)\n"
108
104
"b'\\ xebr\\ x17D*t\\ xae\\ xd4\\ xe3S\\ xb6\\ xe2\\ xebP1\\ x8b'"
109
105
msgstr ""
106
+ ">>> token_bytes(16)\n"
107
+ "b'\\ xebr\\ x17D*t\\ xae\\ xd4\\ xe3S\\ xb6\\ xe2\\ xebP1\\ x8b'"
110
108
111
109
#: ../../library/secrets.rst:79
112
110
msgid ""
@@ -122,6 +120,8 @@ msgid ""
122
120
">>> token_hex(16)\n"
123
121
"'f9bf78b9a18ce6d46a0cd2b0b86df9da'"
124
122
msgstr ""
123
+ ">>> token_hex(16)\n"
124
+ "'f9bf78b9a18ce6d46a0cd2b0b86df9da'"
125
125
126
126
#: ../../library/secrets.rst:90
127
127
msgid ""
@@ -139,6 +139,8 @@ msgid ""
139
139
">>> token_urlsafe(16)\n"
140
140
"'Drmhze6EPcv0fN_81Bj-nA'"
141
141
msgstr ""
142
+ ">>> token_urlsafe(16)\n"
143
+ "'Drmhze6EPcv0fN_81Bj-nA'"
142
144
143
145
#: ../../library/secrets.rst:102
144
146
msgid "How many bytes should tokens use?"
@@ -186,17 +188,17 @@ msgid "Other functions"
186
188
msgstr "기타 함수"
187
189
188
190
#: ../../library/secrets.rst:131
189
- #, fuzzy
190
191
msgid ""
191
192
"Return ``True`` if strings or :term:`bytes-like objects <bytes-like "
192
193
"object>` *a* and *b* are equal, otherwise ``False``, using a \" constant-"
193
194
"time compare\" to reduce the risk of `timing attacks "
194
195
"<https://codahale.com/a-lesson-in-timing-attacks/>`_. See "
195
196
":func:`hmac.compare_digest` for additional details."
196
197
msgstr ""
197
- "문자열 *a*\\ 와 *b*\\ 가 같으면 ``True``\\ 를, 그렇지 않으면 ``False``\\ 를 반환하는데, `타이밍 공격 "
198
- "<https://codahale.com/a-lesson-in-timing-attacks/>`_\\ 의 위험을 줄이는 방식을 "
199
- "사용합니다. 자세한 내용은 :func:`hmac.compare_digest`\\ 를 참조하십시오."
198
+ "문자열 혹은 :term:`바이트열류 객체 <bytes-like object>` *a*\\ 와 *b*\\ 가 같으면 "
199
+ "``True``\\ 를, 그렇지 않으면 ``False``\\ 를 반환하는데, \" 고정 시간 비교(constant-time "
200
+ "compare)\" 를 사용하여 `타이밍 공격 <https://codahale.com/a-lesson-in-timing-"
201
+ "attacks/>`_\\ 의 위험을 줄입니다. 자세한 내용은 :func:`hmac.compare_digest`\\ 를 참조하십시오."
200
202
201
203
#: ../../library/secrets.rst:140
202
204
msgid "Recipes and best practices"
@@ -219,18 +221,20 @@ msgid ""
219
221
"alphabet = string.ascii_letters + string.digits\n"
220
222
"password = ''.join(secrets.choice(alphabet) for i in range(8))"
221
223
msgstr ""
224
+ "import string\n"
225
+ "import secrets\n"
226
+ "alphabet = string.ascii_letters + string.digits\n"
227
+ "password = ''.join(secrets.choice(alphabet) for i in range(8))"
222
228
223
229
#: ../../library/secrets.rst:157
224
- #, fuzzy
225
230
msgid ""
226
231
"Applications should not :cwe:`store passwords in a recoverable format "
227
232
"<257>`, whether plain text or encrypted. They should be salted and "
228
233
"hashed using a cryptographically strong one-way (irreversible) hash "
229
234
"function."
230
235
msgstr ""
231
- "응용 프로그램은 평문인지 암호문인지 관계없이, `암호를 복원 가능한 형식으로 저장 "
232
- "<http://cwe.mitre.org/data/definitions/257.html>`_\\ 해서는 안 됩니다. 이들은 암호학적으로"
233
- " 강력한 단방향(비가역적) 해시 함수를 사용하여 솔트되고 해시 되어야 합니다."
236
+ "응용 프로그램은 평문인지 암호문인지 관계없이, :cwe:`암호를 복원 가능한 형식으로 저장 <257>`\\ 해서는 안 됩니다. 이들은"
237
+ " 암호학적으로 강력한 단방향(비가역적) 해시 함수를 사용하여 솔트되고 해시 되어야 합니다."
234
238
235
239
#: ../../library/secrets.rst:163
236
240
msgid ""
@@ -251,6 +255,15 @@ msgid ""
251
255
" and sum(c.isdigit() for c in password) >= 3):\n"
252
256
" break"
253
257
msgstr ""
258
+ "import string\n"
259
+ "import secrets\n"
260
+ "alphabet = string.ascii_letters + string.digits\n"
261
+ "while True:\n"
262
+ " password = ''.join(secrets.choice(alphabet) for i in range(10))\n"
263
+ " if (any(c.islower() for c in password)\n"
264
+ " and any(c.isupper() for c in password)\n"
265
+ " and sum(c.isdigit() for c in password) >= 3):\n"
266
+ " break"
254
267
255
268
#: ../../library/secrets.rst:180
256
269
msgid "Generate an `XKCD-style passphrase <https://xkcd.com/936/>`_:"
@@ -265,6 +278,12 @@ msgid ""
265
278
" words = [word.strip() for word in f]\n"
266
279
" password = ' '.join(secrets.choice(words) for i in range(4))"
267
280
msgstr ""
281
+ "import secrets\n"
282
+ "# 표준 리눅스 시스템에서는, 편리한 딕셔너리 파일을 사용하십시오.\n"
283
+ "# 다른 플랫폼에서는, 자신의 단어 목록을 제공해야 할 수도 있습니다.\n"
284
+ "with open('/usr/share/dict/words') as f:\n"
285
+ " words = [word.strip() for word in f]\n"
286
+ " password = ' '.join(secrets.choice(words) for i in range(4))"
268
287
269
288
#: ../../library/secrets.rst:192
270
289
msgid ""
@@ -277,4 +296,6 @@ msgid ""
277
296
"import secrets\n"
278
297
"url = 'https://example.com/reset=' + secrets.token_urlsafe()"
279
298
msgstr ""
299
+ "import secrets\n"
300
+ "url = 'https://example.com/reset=' + secrets.token_urlsafe()"
280
301
0 commit comments