rainycode 1.4.2__tar.gz → 1.4.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {rainycode-1.4.2 → rainycode-1.4.3}/PKG-INFO +1 -1
- {rainycode-1.4.2 → rainycode-1.4.3}/common_utils/captcha_util.py +3 -1
- {rainycode-1.4.2 → rainycode-1.4.3}/pyproject.toml +1 -1
- {rainycode-1.4.2 → rainycode-1.4.3}/rainycode.egg-info/PKG-INFO +1 -1
- {rainycode-1.4.2 → rainycode-1.4.3}/common_base/aiorequests.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_base/consts.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_base/exception.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_base/logging.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_base/response.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_depends/auth_depend.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_models/__init__.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_models/base_model.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_models/user_model.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_models/wechat_model.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_servers/api/auth_api.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_servers/api/wechat_api.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_servers/router.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_servers/schemas/auth_schema.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_servers/service/auth_svc.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_servers/service/wechat_svc.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_utils/bcrypt_util.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_utils/ip_util.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_utils/jwt_util.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_utils/snowflake_util.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/common_utils/wechat_util.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/core/base_config.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/core/databases/aiodb.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/core/databases/aioredis.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/core/middleware/http_middleware.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/core/start.py +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/rainycode.egg-info/SOURCES.txt +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/rainycode.egg-info/dependency_links.txt +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/rainycode.egg-info/requires.txt +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/rainycode.egg-info/top_level.txt +0 -0
- {rainycode-1.4.2 → rainycode-1.4.3}/setup.cfg +0 -0
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import base64
|
|
2
2
|
import random
|
|
3
|
+
import secrets
|
|
3
4
|
import string
|
|
4
5
|
from io import BytesIO
|
|
5
6
|
|
|
@@ -17,7 +18,8 @@ class CaptchaUtil:
|
|
|
17
18
|
字符集去 0/O、1/I/L,避免误读
|
|
18
19
|
"""
|
|
19
20
|
alphabet = "ABCDEFGHJKLMNPQRSTUVWXYZ23456789"
|
|
20
|
-
|
|
21
|
+
# secrets.choice:加密安全随机,避免 6 位码可被预测而削弱防枚举
|
|
22
|
+
return "".join(secrets.choice(alphabet) for _ in range(length))
|
|
21
23
|
|
|
22
24
|
@classmethod
|
|
23
25
|
def generate_captcha(cls) -> tuple[str, str]:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|