Die Passwörter werden in internen Systemobjekten abgelegt, auf welche man direkt keinen Zugriff hat.
Auf jeden Fall nicht im USRPRF-Objekt!

Für die OS/400-Passwörter geht folgendes :

Mit dem API QSYRUPWD kannst du die verschlüsselten Passwörter ermitteln.
http://publib.boulder.ibm.com/infoce...s/qsyrupwd.htm

Mit dem API QSYSUPWD kannst du die verschlüsselten Passwörter wieder setzen.
http://publib.boulder.ibm.com/infoce...s/qsysupwd.htm

Der Verschlüsselungsalgorythmus ist je nach Systemwert QPWDLVL unterschiedlich (DES/DEA 56Bit, AES !?). Auf jeden Fall ist es eine one way Verschlüsselung, d.h. du kannst nur die verschlüsselten Werte miteinander vergleichen.
Bei QPWDLVL=0,1 (Passwort DEA/DES 56Bit verschlüsselt) kannst du die Verschlüsselung mit dem API CIPHER (Function Identifier 0002) nachvollziehen.
(Bei QPWDLVL=2,3 kenne ich den Algorythmus nicht)

Bei QPWDLVL=0,2 werden zusätzlich noch die Passwörter analog Win95/98/ME LM-Hash (DES 2x56Bit pro 7Byte) verschlüsselt abgelegt.
Bei QPWDLVL=1,3 wird der LM-Hash gelöscht.
Der WinNT NTLM-Hash (MD4-56Bit) bzw. NTLMv2-Hash (MD5-128Bit) wird immer mit abgelegt,
Auf diese hat man momentan aber keinen Zugriff per API.
Ausserdem sind diese LM/NTLM-Hashs ja auch noch auf dem PC in der SAM abgelegt.
(Alles benötigt für den Zugriff auf den Net- bzw. SMB-Server.)
http://www.windowsitpro.com/Windows/...72/pg/2/2.html

Siehe auch die Bsp. auf der Web-Site von Leif Svalgaard, zum Thema Verschlüssellung und AS/400.

http://www.iseries400.org/programs/