mme Geschrieben 8. Januar 2009 Teilen Geschrieben 8. Januar 2009 Hallo, ich habe folgendes Problem. Ich muss in PL/SQL ein Passwort verschlüsselt ablegen und bei bedarf wieder entschlüsseln um es zu benutzen. Vorgabe ist, das ganze mit RSA 512 zu machen! Abgesehen davon das ich von RSA nicht viel Anhnung habe (ok, public und privat key weiß ich schon), habe ich nun die Frage wie ich in PL/SQL eine RSA verschlüsselung machen kann. Ich bin schon am dbms_crypt dran, aber da habe ich nur 3des und aes (symetrische Verfahren) usw. gefunden. Weiß jemand eine Lösung? Ich habe Code vorliegen für eine Cliententwicklung wo ein Kollege eine aus dem Internet gesaugte in .net entwickelte crypt.dll verwendet. Also kam ich auf die Idee aus der Datenbank heraus auf eine DLL zuzugreifen und dort die Funktionen zu nutzen. Ist aber nicht sehr elegant und leider sind die Datenbanken unter denen das dann laufen soll sowohl windows, Linux als auch ein AIX-System und da bin ich mir nicht so sicher wie das mit der dll so geht... Also zusammenfassend geht es mir nicht darum wie rsa funktioniert, sondern nur darum wie ich nachmöglichkeit fertige funktionen (man muss das Rad ja nicht mehrmals erfinden) in PL/SQL nutzen kann (deshalb im Bereich Datenbanken)... Über jeden Hinweis würde ich mich freuen... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
dr.dimitri Geschrieben 8. Januar 2009 Teilen Geschrieben 8. Januar 2009 Ein PW sollte nie abgespeichert werden, sondern nur ein Hashwert des PW. Dann muss man sich auch keine Gedanken mehr über eine Verschlüsselung machen. Diverse Hashfunktionen sind ja in dbms_crypto implementiert (ich würde zu SHA-1 raten). Dann gibt es noch die Möglichkeit per Transparent Data Encryption eine Tabelle oder auch nur einige Spalten zu verschlüsseln und zwar so, dass die Anwendung überhaupt nichts davon merkt. Der DBA sollte allerdings Erfahrung damit haben, da es administrativ erst mal eingerichtet werden muss. Ist auch nur in der Enterprise Edition verfügbar. Dim Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
mme Geschrieben 8. Januar 2009 Autor Teilen Geschrieben 8. Januar 2009 Ein PW sollte nie abgespeichert werden, sondern nur ein Hashwert des PW. Dann muss man sich auch keine Gedanken mehr über eine Verschlüsselung machen. Da gebe ich dir Grundsätzlich recht, nur hier ist es so, das unter bestimmten Bedingungen in PL/SQL ein SOAP Aufruf zu einem SAP-Webservice erfolgen muss. Und hierfür muss eine Authentifizierung mit einem technischen Account gegenüber dem SAP-System erfolgen. Und in dieser Konstellation kenne ich keine andere herangehensweise als das Passwort irgendwo abzuspeichern... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
dr.dimitri Geschrieben 8. Januar 2009 Teilen Geschrieben 8. Januar 2009 Hmm ok. Da kann ich dir nicht weiterhelfen fürchte ich. Evtl weiß Tom eine Lösung für dich. Ist grade offen und du kannst posten wenn Du dich beeilst. Ideal ist eure Architektur allerdings nicht, denn normalerweise sollte die Autentifizierung und Autorisierung über ein zentrales Directory erfolgen damit nicht irgendwelche PW über die Systeme hinweg verstreut werden müssen. Dim Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
mme Geschrieben 8. Januar 2009 Autor Teilen Geschrieben 8. Januar 2009 guter Tipp. Habe gerade eine Anfrage bei Tom gestellt und werde berichten welche Antwort ich bekomme (wenn ich denn eine bekomme)... Falls sonst noch Ideen da sind immer her damit... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
dr.dimitri Geschrieben 8. Januar 2009 Teilen Geschrieben 8. Januar 2009 Also eine Antwort kriegst auf jeden Fall kann nur sein, dass sie ggf. nicht veröffentlich wird und sie lautet: Stellt eure Architektur um. Tom ist da hin und wieder ein bissl eigen wenn sich nicht alles in Oracle erledigen läßt. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
mme Geschrieben 9. Januar 2009 Autor Teilen Geschrieben 9. Januar 2009 Also habe eine Antwort von Tom: I don't have a suggestion for this one - dbms_crypto does what it does, there are no other encryption packages in the database. You might be able to find java code that does it and load that into the database. Java in der DB einzubinden ist auf jeden Fall besser als auf eine externe DLL zu gehen. Bisher sind die Datenbanken noch nicht richtig für Java konfiguriert (java-pool usw.), aber das sollte bei den verschiedenen DBAs durchzubekommen sein. Dann brauch jetzt wohl nur noch die RSA encrypt und decrypt Routinen in Java... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
dr.dimitri Geschrieben 9. Januar 2009 Teilen Geschrieben 9. Januar 2009 Such man in google nach rsa und pl/sql landet man mit dem 1 Treffer übrigends genau in diesem Thread. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.