@@ -15,11 +15,11 @@ from pywe_storage import RedisStorage |
||
| 15 | 15 |
from account.models import UserInfo |
| 16 | 16 |
from logs.models import MchInfoDecryptLogInfo, MchInfoEncryptLogInfo |
| 17 | 17 |
from marketcode.models import MarketCodeInfo |
| 18 |
-from mch.models import ActivityInfo, BrandInfo, ModelInfo, ConsumeShotUnbindingInfo |
|
| 18 |
+from mch.models import ActivityInfo, BrandInfo, ConsumeShotUnbindingInfo, ModelInfo |
|
| 19 | 19 |
from utils.algorithm.b64 import b64_decrypt, b64_encrypt |
| 20 | 20 |
from utils.algorithm.caesar import caesar_decrypt, caesar_encrypt |
| 21 | 21 |
from utils.algorithm.rsalg import rsa_decrypt, rsa_encrypt |
| 22 |
-from utils.error.errno_utils import MarketCodeStatusCode, UserStatusCode |
|
| 22 |
+from utils.error.errno_utils import CiphertextStatusCode, MarketCodeStatusCode, UserStatusCode |
|
| 23 | 23 |
from utils.redis.connect import r |
| 24 | 24 |
|
| 25 | 25 |
|
@@ -108,7 +108,10 @@ def encrypt(request): |
||
| 108 | 108 |
def decrypt(request, v='v2'): |
| 109 | 109 |
ciphertext = request.POST.get('ciphertext', '')
|
| 110 | 110 |
|
| 111 |
- prefix, cipherlen, ciphertext = ciphertext.split('+', 2)
|
|
| 111 |
+ try: |
|
| 112 |
+ prefix, cipherlen, ciphertext = ciphertext.split('+', 2)
|
|
| 113 |
+ except Exception: |
|
| 114 |
+ return response(CiphertextStatusCode.CIPHERTEXT_INVALID) |
|
| 112 | 115 |
|
| 113 | 116 |
ciphertext = ciphertext[:int(cipherlen)] |
| 114 | 117 |
|
@@ -197,6 +197,11 @@ class MarketCodeStatusCode(BaseStatusCode): |
||
| 197 | 197 |
MARKET_CODE_NOT_FOUND = StatusCodeField(505001, 'Market Code Not Found', description=u'一物一码不存在') |
| 198 | 198 |
|
| 199 | 199 |
|
| 200 |
+class CiphertextStatusCode(BaseStatusCode): |
|
| 201 |
+ """ 加解密相关错误码 5050xx """ |
|
| 202 |
+ CIPHERTEXT_INVALID = StatusCodeField(505011, 'Ciphertext Invalid', description=u'密文无效') |
|
| 203 |
+ |
|
| 204 |
+ |
|
| 200 | 205 |
class MaintenancePointStatusCode(BaseStatusCode): |
| 201 | 206 |
""" 维修点相关错误码 5060xx """ |
| 202 | 207 |
MAINTENACE_POINT_NOT_FOUND = StatusCodeField(506001, 'Maintenance Point Not Found', description=u'维修点不存在') |