mirai icon indicating copy to clipboard operation
mirai copied to clipboard

登录遇到 net.mamoe.mirai.internal.utils.crypto.DecryptionFailedException

Open Keyezi opened this issue 1 year ago • 8 comments

问题描述

这两天没管机器人,打开后台看后发现机器人由于未知原因崩溃,console直接卡死无法输入指令(急着修复当时没留日志) 然后使用全新mirai进行手表协议自动登录的时候发现无法登录导致Botclosed

复现

使用全新mirai+手表协议自动登录即可复现

mirai-core 版本

2.12.0

bot-protocol

ANDROID_WATCH

其他组件版本

console

系统日志

14:42:44 [INFO] iTXTech Mirai Console Loader version 2.0.1-b5303b5
  14:42:44 [INFO] https://github.com/iTXTech/mirai-console-loader
  14:42:44 [INFO] This program is licensed under GNU AGPL v3
  14:42:48 [INFO] Mirai Console Loader Announcement:
Mirai Console Loader 公告栏

如果在图片上传的时候遇到问题请与我们联系 (需要提供图片文件源本)
`- 如 Unsupported image type for ExternalResource *
`  considering use gif/png/bmp/jpg format.
`- Tracker: https://github.com/mamoe/mirai/issues/new/choose

常用资源整合
`- https://mirai.mamoe.net/topic/653

MCL 已推出 2.1.0,更好的支持 Mirai 2.11 的插件系统,建议更新。

  14:42:48 [INFO] Verifying "net.mamoe:mirai-console" v2.12.0
  14:42:48 [ERROR] "net.mamoe:mirai-console" is corrupted.
  14:42:48 [INFO] Updating "net.mamoe:mirai-console" to v2.12.0
 Downloading mirai-console-2.12.0.jar [==============================] 7.32 MB
 Downloading mirai-console-2.12.0.sha1 [==============================] 40 B
  14:42:50 [INFO] Verifying "net.mamoe:mirai-console-terminal" v2.12.0
  14:42:50 [ERROR] "net.mamoe:mirai-console-terminal" is corrupted.
  14:42:50 [INFO] Updating "net.mamoe:mirai-console-terminal" to v2.12.0
 Downloading mirai-console-terminal-2.12.0.jar [==============================] 1.26 MB
 Downloading mirai-console-terminal-2.12.0.sha1 [==============================] 40 B
  14:42:52 [INFO] Verifying "net.mamoe:mirai-core-all" v2.12.0
  14:42:52 [ERROR] "net.mamoe:mirai-core-all" is corrupted.
  14:42:52 [INFO] Updating "net.mamoe:mirai-core-all" to v2.12.0
 Downloading mirai-core-all-2.12.0.jar [==============================] 35.77 MB
 Downloading mirai-core-all-2.12.0.sha1 [==============================] 40 B
  14:42:55 [INFO] Verifying "org.itxtech:mcl-addon" v2.0.2
  14:42:55 [ERROR] "org.itxtech:mcl-addon" is corrupted.
  14:42:55 [INFO] Updating "org.itxtech:mcl-addon" to v2.0.2
 Downloading mcl-addon-2.0.2.jar [==============================] 51.64 KB
 Downloading mcl-addon-2.0.2.sha1 [==============================] 40 B
2022-07-29 14:42:58 I/main: Starting mirai-console...
2022-07-29 14:42:58 I/main: Backend: version 2.12.0, built on 2022-07-03 10:57:58.
2022-07-29 14:42:58 I/main: Frontend Terminal: version 2.12.0, provided by Mamoe Technologies
2022-07-29 14:42:58 I/main: Welcome to visit https://mirai.mamoe.net/
2022-07-29 14:42:58 W/stderr: SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
2022-07-29 14:42:58 W/stderr: SLF4J: Defaulting to no-operation (NOP) logger implementation
2022-07-29 14:42:58 W/stderr: SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
2022-07-29 14:42:58 I/plugin: Successfully loaded plugin MCL Addon v2.0.2
2022-07-29 14:42:58 I/main: Prepared built-in commands: autoLogin, help, login, logout, permission, status, stop
2022-07-29 14:42:58 I/MCL Addon: iTXTech MCL Version: 2.0.1-b5303b5
2022-07-29 14:42:58 W/MCL Addon: iTXTech Soyuz 未安装,Soyuz MCL Handler 特性已禁用
2022-07-29 14:42:58 I/main: 1 plugin(s) enabled.
2022-07-29 14:42:59 I/WindowHelperJvm: Mirai 正在使用桌面环境. 如遇到验证码将会弹出对话框. 可添加 JVM 属性 `mirai.no-desktop` 以关闭.
2022-07-29 14:42:59 I/WindowHelperJvm: Mirai is using desktop. Captcha will be thrown by window popup. You can add `mirai.no-desktop` to JVM properties (-Dmirai.no-desktop) to disable it.
2022-07-29 14:42:59 I/main: Auto-login 2645963361
2022-07-29 14:42:59 W/stderr: ERROR StatusLogger Log4j2 could not find a logging implementation. Please add log4j-core to the classpath. Using SimpleLogger to log to the console...
2022-07-29 14:43:21 I/Bot.2645963361: Bot cancelled: Bot closed
2022-07-29 14:43:21 E/main: net.mamoe.mirai.internal.utils.crypto.DecryptionFailedException
net.mamoe.mirai.internal.utils.crypto.DecryptionFailedException
        at net.mamoe.mirai.internal.utils.crypto.TEA.fail(TEA.kt:298)
        at net.mamoe.mirai.internal.utils.crypto.TEA.doOption$decrypt(TEA.kt:274)
        at net.mamoe.mirai.internal.utils.crypto.TEA.doOption(TEA.kt:294)
        at net.mamoe.mirai.internal.utils.crypto.TEA.decrypt(TEA.kt:318)
        at net.mamoe.mirai.internal.utils.crypto.TEA.decrypt$default(TEA.kt:317)
        at net.mamoe.mirai.internal.network.protocol.packet.login.wtlogin.WtLoginExt.analyzeTlv106(WtLoginExt.kt:378)
        at net.mamoe.mirai.internal.network.protocol.packet.login.WtLogin$Login.onLoginSuccess(WtLogin.kt:272)
        at net.mamoe.mirai.internal.network.protocol.packet.login.WtLogin$Login.decode(WtLogin.kt:181)
        at net.mamoe.mirai.internal.network.components.PacketCodecImpl.processBody(PacketCodec.kt:420)
        at net.mamoe.mirai.internal.network.impl.netty.NettyNetworkHandler$PacketDecodePipeline$send$1.invokeSuspend(NettyNetworkHandler.kt:189)
        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
        at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
        at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
        at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500)
        at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
        at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
        at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
        at java.base/java.lang.Thread.run(Unknown Source)
        Suppressed: java.util.concurrent.CancellationException: Bot closed
                at kotlinx.coroutines.ExceptionsKt.CancellationException(Exceptions.kt:22)
                at net.mamoe.mirai.internal.AbstractBot.close(AbstractBot.kt:112)
                at net.mamoe.mirai.internal.QQAndroidBot.close(QQAndroidBot.kt:84)
                at net.mamoe.mirai.internal.AbstractBot.login(AbstractBot.kt:136)
                at net.mamoe.mirai.internal.AbstractBot$login$1.invokeSuspend(AbstractBot.kt)
                at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
                at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
                at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:279)
                at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85)
                at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59)
                at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)
                at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:38)
                at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source)
                at net.mamoe.mirai.console.internal.MiraiConsoleImplementationBridge.doStart$mirai_console(MiraiConsoleImplementationBridge.kt:245)
                at net.mamoe.mirai.console.MiraiConsoleImplementation$Companion.start(MiraiConsoleImplementation.kt:464)
                at net.mamoe.mirai.console.terminal.MiraiConsoleTerminalLoader.startAsDaemon(MiraiConsoleTerminalLoader.kt:168)
                at net.mamoe.mirai.console.terminal.MiraiConsoleTerminalLoader.startAsDaemon$default(MiraiConsoleTerminalLoader.kt:167)
                at net.mamoe.mirai.console.terminal.MiraiConsoleTerminalLoader.main(MiraiConsoleTerminalLoader.kt:52)
                at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                at java.base/java.lang.reflect.Method.invoke(Unknown Source)
                at org.itxtech.mcl.Utility.bootJars(Utility.java:89)
                at org.itxtech.mcl.Utility.bootJars(Utility.java:79)
                at org.itxtech.mcl.Utility.bootMirai(Utility.java:101)
                at org.itxtech.mcl.module.builtin.Boot.boot(Boot.java:109)
                at org.itxtech.mcl.module.ModuleManager.phaseBoot(ModuleManager.java:148)
                at org.itxtech.mcl.Loader.lambda$start$4(Loader.java:189)
                at org.itxtech.mcl.Loader.tryCatching(Loader.java:146)
                at org.itxtech.mcl.Loader.start(Loader.java:189)
                at org.itxtech.mcl.Loader.main(Loader.java:79)
        [CIRCULAR REFERENCE:net.mamoe.mirai.internal.utils.crypto.DecryptionFailedException]

2022-07-29 14:43:21 I/main: mirai-console started successfully.

网络日志

[0m2022-07-29 14:43:02 V/Net 2645963361: No server list cached.[0m
[92m2022-07-29 14:43:02 I/Net 2645963361: ECDH key is invalid, start to fetch ecdh public key from server.[0m
[92m2022-07-29 14:43:02 I/Net 2645963361: Successfully fetched ecdh public key from server.[0m
[0m2022-07-29 14:43:02 V/Net 2645963361: Send: wtlogin.login[0m
[0m2022-07-29 14:43:02 V/Net 2645963361: Recv: wtlogin.login[0m
[0m2022-07-29 14:43:21 V/Net 2645963361: Send: wtlogin.login[0m
[0m2022-07-29 14:43:21 V/Net 2645963361: Recv: wtlogin.login[0m
[0m2022-07-29 14:43:21 V/Net 2645963361: Send: wtlogin.login[0m
[31m2022-07-29 14:43:21 E/Net 2645963361: Exception in decoding packet.
net.mamoe.mirai.internal.utils.crypto.DecryptionFailedException
	at net.mamoe.mirai.internal.utils.crypto.TEA.fail(TEA.kt:298)
	at net.mamoe.mirai.internal.utils.crypto.TEA.doOption$decrypt(TEA.kt:274)
	at net.mamoe.mirai.internal.utils.crypto.TEA.doOption(TEA.kt:294)
	at net.mamoe.mirai.internal.utils.crypto.TEA.decrypt(TEA.kt:318)
	at net.mamoe.mirai.internal.utils.crypto.TEA.decrypt$default(TEA.kt:317)
	at net.mamoe.mirai.internal.network.protocol.packet.login.wtlogin.WtLoginExt.analyzeTlv106(WtLoginExt.kt:378)
	at net.mamoe.mirai.internal.network.protocol.packet.login.WtLogin$Login.onLoginSuccess(WtLogin.kt:272)
	at net.mamoe.mirai.internal.network.protocol.packet.login.WtLogin$Login.decode(WtLogin.kt:181)
	at net.mamoe.mirai.internal.network.components.PacketCodecImpl.processBody(PacketCodec.kt:420)
	at net.mamoe.mirai.internal.network.impl.netty.NettyNetworkHandler$PacketDecodePipeline$send$1.invokeSuspend(NettyNetworkHandler.kt:189)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
	at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
	at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500)
	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.base/java.lang.Thread.run(Unknown Source)
[0m

补充信息

写的如果不清楚麻烦请提醒补充,谢谢

Keyezi avatar Jul 29 '22 06:07 Keyezi

补充:中途提醒设备锁保护进行了验证,但是没有提醒验证码

Keyezi avatar Jul 29 '22 06:07 Keyezi

试试删除 account.secrets, 不行就删除 cache 目录?

Him188 avatar Jul 29 '22 08:07 Him188

试试删除 account.secrets, 不行就删除 cache 目录?

全新安装测试,试过几次了

Keyezi avatar Jul 29 '22 08:07 Keyezi

尝试关掉设备锁. 不行的话可能需要你的账号密码帮助调试, 如果你愿意提供, 可以发邮件给 [email protected]. 账号仅用于测试是否能登录.

Him188 avatar Jul 29 '22 13:07 Him188

尝试关掉设备锁. 不行的话可能需要你的账号密码帮助调试, 如果你愿意提供, 可以发邮件给 [email protected]. 账号仅用于测试是否能登录.

太晚了,今天刚吃了席,明天私聊给你

Keyezi avatar Jul 29 '22 14:07 Keyezi

补充:中途提醒设备锁保护进行了验证,但是没有提醒验证码

请问如何通过设备锁,扫码成功后关闭弹窗马上又弹出一个

yuanbolin avatar Aug 09 '22 09:08 yuanbolin

补充:中途提醒设备锁保护进行了验证,但是没有提醒验证码

请问如何通过设备锁,扫码成功后关闭弹窗马上又弹出一个

大多数情况下是设备锁没验证成功就退出了窗口,还有一种情况是登陆就封号了

Keyezi avatar Aug 09 '22 09:08 Keyezi

同遇到问题,看起来是服务到使用了新的 key 的格式吗?目前有什么解决方案吗?

codievilky avatar Aug 30 '22 07:08 codievilky

image 我也是

MR-XieXuan avatar Feb 10 '23 03:02 MR-XieXuan