Class Wallet


  • public final class Wallet
    extends java.lang.Object
    Liefert eine Art Brieftasche, ueber die andere Klassen Daten verschluesselt abspeichern koennen. HINWEIS: Das Wallet verwendet zum Verschluesseln per Default den asymmetrischen RSA-Algorithmus (es sei denn, es wurde explizit eine andere Engine angegeben). Es ist im Default-Fall also nicht fuer groessere Daten (Dateien, Streams, etc.) geeignet sondern typischerweise fuer Passwoerter. Will zum Beispiel ein Plugin irgendwelche Passwort-Informationen sicher speichern, dann kann es mittels folgenden Codes ein Wallet erzeugen: // erzeugt eine neue Wallet-Datei in ~/.jameica/cfg mit dem // Dateinamen "beliebige.Klasse.wallet2" Wallet wallet = new Wallet(beliebige.Klasse.class); // Speichern des Passwortes "geheim" unter dem Alias "passwort". wallet.set("passwort","geheim"); // Auslesen des Passwortes "geheim". String password = wallet.getString("passwort");
    • Constructor Summary

      Constructors 
      Constructor Description
      Wallet​(java.lang.Class clazz)
      ct.
      Wallet​(java.lang.Class clazz, Engine engine)
      ct.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.io.Serializable delete​(java.lang.String alias)
      Loescht den genanten Alias.
      void deleteAll​(java.lang.String aliasPrefix)
      Loescht alle Nutzdaten, deren Alias-Name mit dem angegebenen beginnt.
      java.io.Serializable get​(java.lang.String alias)
      Liefert den Wert des genannten Alias-Namen entschluesselt.
      java.lang.String[] getAll​(java.lang.String aliasPrefix)
      Liefert alle Keys, deren Name mit dem Prefix beginnt.
      java.util.Enumeration<java.lang.String> getKeys()
      Liefert eine Liste aller Aliases in diesem Wallet.
      void set​(java.lang.String alias, java.io.Serializable data)
      Speichert einen Datensatz verschluesselt in dem Wallet.
      void setEngine​(Engine engine)
      Legt fest, mit welcher Crypto-Engine die Speicherung erfolgen soll.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Wallet

        public Wallet​(java.lang.Class clazz)
               throws java.lang.Exception
        ct.
        Parameters:
        clazz - Klasse, fuer die das Wallet gilt.
        Throws:
        java.lang.Exception
      • Wallet

        public Wallet​(java.lang.Class clazz,
                      Engine engine)
               throws java.lang.Exception
        ct.
        Parameters:
        clazz - Klasse, fuer die das Wallet gilt.
        engine - die zu verwendende Crypto-Engine.
        Throws:
        java.lang.Exception
    • Method Detail

      • setEngine

        public void setEngine​(Engine engine)
        Legt fest, mit welcher Crypto-Engine die Speicherung erfolgen soll.
        Parameters:
        engine - die zu verwendende Engine.
      • set

        public void set​(java.lang.String alias,
                        java.io.Serializable data)
                 throws java.lang.Exception
        Speichert einen Datensatz verschluesselt in dem Wallet.
        Parameters:
        alias - Alias-Name.
        data - Nutzdaten, die verschluesselt gespeichert werden sollen oder null wenn der Wet geloescht werden soll.
        Throws:
        java.lang.Exception
      • delete

        public java.io.Serializable delete​(java.lang.String alias)
                                    throws java.lang.Exception
        Loescht den genanten Alias.
        Parameters:
        alias - Name des zu loeschenden Alias.
        Returns:
        der geloeschte Wert hinter dem Alias.
        Throws:
        java.lang.Exception
      • deleteAll

        public void deleteAll​(java.lang.String aliasPrefix)
                       throws java.lang.Exception
        Loescht alle Nutzdaten, deren Alias-Name mit dem angegebenen beginnt. Wird als Prefix null oder ein Leerstring angegeben, wird das komplette Wallet geleert.
        Parameters:
        aliasPrefix - Alias-Prefix.
        Throws:
        java.lang.Exception
      • getAll

        public java.lang.String[] getAll​(java.lang.String aliasPrefix)
                                  throws java.lang.Exception
        Liefert alle Keys, deren Name mit dem Prefix beginnt. Wird null uebergeben, werden alle Keys zurueckgeliefert. Die Funktion liefert nie null sondern hoechstens ein leeres Array.
        Parameters:
        aliasPrefix - Alias-Prefix.
        Returns:
        Liste der gefundenen Keys.
        Throws:
        java.lang.Exception
      • getKeys

        public java.util.Enumeration<java.lang.String> getKeys()
        Liefert eine Liste aller Aliases in diesem Wallet.
        Returns:
        Liste der Aliases.
      • get

        public java.io.Serializable get​(java.lang.String alias)
        Liefert den Wert des genannten Alias-Namen entschluesselt.
        Parameters:
        alias - Alias-Name.
        Returns:
        Nutzdaten.