- 在应用中注册支付蓝图(payment_bp)以支持支付接口 - 配置支付宝相关秘钥、回调地址及环境选项 - 新增订单模型(Order),支持订单数据存储与管理 - 管理后台接口添加订单列表查询功能,支持超级管理员访问 - 购买页面与表单修改,支持不同套餐的购买提交 - 支付成功页面提示,显示订单编号及积分到账信息 - 移除买积分按钮禁用逻辑,开放购买功能
79 lines
2.5 KiB
Python
79 lines
2.5 KiB
Python
from typing import Callable, Union, Tuple, Optional, overload, Literal
|
|
|
|
from Cryptodome.Math.Numbers import Integer
|
|
from Cryptodome.IO._PBES import ProtParams
|
|
|
|
__all__ = ['generate', 'construct', 'import_key',
|
|
'RsaKey', 'oid']
|
|
|
|
RNG = Callable[[int], bytes]
|
|
|
|
class RsaKey(object):
|
|
def __init__(self, **kwargs: int) -> None: ...
|
|
|
|
@property
|
|
def n(self) -> int: ...
|
|
@property
|
|
def e(self) -> int: ...
|
|
@property
|
|
def d(self) -> int: ...
|
|
@property
|
|
def p(self) -> int: ...
|
|
@property
|
|
def q(self) -> int: ...
|
|
@property
|
|
def u(self) -> int: ...
|
|
@property
|
|
def invp(self) -> int: ...
|
|
@property
|
|
def invq(self) -> int: ...
|
|
|
|
def size_in_bits(self) -> int: ...
|
|
def size_in_bytes(self) -> int: ...
|
|
def has_private(self) -> bool: ...
|
|
def can_encrypt(self) -> bool: ... # legacy
|
|
def can_sign(self) -> bool:... # legacy
|
|
def public_key(self) -> RsaKey: ...
|
|
def __eq__(self, other: object) -> bool: ...
|
|
def __ne__(self, other: object) -> bool: ...
|
|
def __getstate__(self) -> None: ...
|
|
def __repr__(self) -> str: ...
|
|
def __str__(self) -> str: ...
|
|
|
|
@overload
|
|
def export_key(self,
|
|
format: Optional[str]="PEM",
|
|
passphrase: Optional[str]=None,
|
|
pkcs: Optional[int]=1,
|
|
protection: Optional[str]=None,
|
|
randfunc: Optional[RNG]=None
|
|
) -> bytes: ...
|
|
@overload
|
|
def export_key(self, *,
|
|
format: Optional[str]="PEM",
|
|
passphrase: str,
|
|
pkcs: Literal[8],
|
|
protection: str,
|
|
randfunc: Optional[RNG]=None,
|
|
prot_params: ProtParams,
|
|
) -> bytes: ...
|
|
|
|
# Backward compatibility
|
|
exportKey = export_key
|
|
publickey = public_key
|
|
|
|
Int = Union[int, Integer]
|
|
|
|
def generate(bits: int, randfunc: Optional[RNG]=None, e: Optional[int]=65537) -> RsaKey: ...
|
|
def construct(rsa_components: Union[Tuple[Int, Int], # n, e
|
|
Tuple[Int, Int, Int], # n, e, d
|
|
Tuple[Int, Int, Int, Int, Int], # n, e, d, p, q
|
|
Tuple[Int, Int, Int, Int, Int, Int]], # n, e, d, p, q, crt_q
|
|
consistency_check: Optional[bool]=True) -> RsaKey: ...
|
|
def import_key(extern_key: Union[str, bytes], passphrase: Optional[str]=None) -> RsaKey: ...
|
|
|
|
# Backward compatibility
|
|
importKey = import_key
|
|
|
|
oid: str
|