How to decode string

RealHeavyDude

Well-Known Member
There is no decode - it's only one way. If you require a "decode" you must use the cryptography functionality that was introduced in OpenEdge 10.0B.

Heavy Regards, RealHeavyDude.
 

RealHeavyDude

Well-Known Member
The ABL has no built-in functionality to decode and Progress has never disclosed the algorithm that they use to generated the "encoded" string. Therefore from within the ABL there is no way to achieve this. This has been deliberately implemented by Progress that way to secure passwords. Probably there is somebody out there that has a crack but I am not aware of any.

The only way around your password problem ( in case the user has forgotten ) is to delete the _User record from the database and re-insert it with a "one time" password that the user needs to change immediately. In order to do that the account under which you do that must have the privilege to edit the user list which requires security administrator privileges granted.

Heavy Regards, RealHeavyDude.
 

RealHeavyDude

Well-Known Member
Forgot:

That's why I don't like the _User table and I do use the client principal object instead. That way I can take full advantage of the cryptography functionality available within the ABL ( see ENCRYPT and DECRYPT ) which work bi-directional.

Heavy Regards, RealHeavyDude.
 

4GLNewbie

Member
But why you need to decode an encoded password?

Usually only thing you do with passwords is check if they're equal to what the user has written..
And if you want to change it someway ( an administrator privilege, i guess ) you can, i think, easily create a program that does the job ( even checking the value actually saved if you want.. )

It's only my opinion..
 
Exactly, why do U need to know the value of the string ??
You can compare against another to check for equality,*
if the strings are equal then you can have ability to change.
Though why would you ever need to know the value ????
That is NOT standard functionality, therefore why are you
trying to achieve it ??
 

RealHeavyDude

Well-Known Member
Probably there is a misunderstanding by some ABL developers that the ENCODE function should be part of bi-directional cryptography because before OE10.0B it was that was available in the ABL. But it's not intended to be, never was. From OE10.0B+ the cryptography is available and should be used to encrypt and decrypt.

Heavy Regards, RealHeavyDude.
 

Ach

Member
I have enocode (password) string in my progress db in _user._Password field.
I want to decode it.
Quite an old thread but maybe someone can benefit from this:

Code:
for each _user where _userid = "JohnDoe"
      delete _user.
end.

Code:
create _user.
assign _user._userid   = "JohnDoe"
       _user._password = decode ("mypassword")
       _user.user-name = "John Doe"

I just did this because I had the same problem and I was searching google for how to decode and saw this thread. Didn't know root password so I deleted _user for root and created it again. Worked perfectly. Now I can get into the system using the new password I created for root.
 

Cecil

19+ years progress programming and still learning.
Quite an old thread but maybe someone can benefit from this:

Code:
for each _user where _userid = "JohnDoe"
      delete _user.
end.

Code:
create _user.
assign _user._userid   = "JohnDoe"
       _user._password = decode ("mypassword")
       _user.user-name = "John Doe"

I just did this because I had the same problem and I was searching google for how to decode and saw this thread. Didn't know root password so I deleted _user for root and created it again. Worked perfectly. Now I can get into the system using the new password I created for root.
What's the decode() function? I assume it's meant to say encode()
 

Ach

Member
What's the decode() function? I assume it's meant to say encode()
Correct. I mistyped. It should say

Code:
create _user.
assign _user._userid   = "JohnDoe"
       _user._password = encode ("mypassword")
       _user.user-name = "John Doe"
 
Top