Ham*_*one 3 oracle password-encryption plsqldeveloper
当您在All Around Automation的PL / SQL Developer中保存连接详细信息时,密码将按以下方式加密:
DisplayName=Oracle Production
IsFolder=0
Number=7
Parent=2
Username=user
Database=db_host:1521/db_name
ConnectAs=Normal
Edition=
Workspace=
AutoConnect=0
ConnectionMatch=536870911
Password=2578502833104824427441244294443234184532
IdentifiedExt=0
Color=65535
Run Code Online (Sandbox Code Playgroud)
其中一些连接是几年前输入的,我无法找到密码。有谁知道如何将上面的加密字符串解码为实际密码?
小智 6
密码为Z2Logis1z。我使用以下C#代码进行解密,您可以在此处阅读
https://adamcaudill.com/2016/02/02/plsql-developer-nonexistent-encryption/
using System;
using System;
using System.Collections.Generic;
using System.IO;
public class Program
{
public static void Main()
{
var values = new List<int>();
var ret = string.Empty;
string scrambled= "2578502833104824427441244294443234184532";
for (var i = 0; i < scrambled.Length; i += 4)
{
values.Add(Convert.ToInt32(scrambled.Substring(i, 4)));
}
var key = values[0];
values.RemoveAt(0);
for (var i = 0; i < values.Count; i++)
{
var val = values[i] - 1000;
var mask = key + (10 * (i + 1));
ret += (char)((val ^ mask) >> 4);
}
Console.WriteLine(ret);
}
}
Run Code Online (Sandbox Code Playgroud)