Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Μπορει να μου καποιος πως μπορω να κανω αποκρυπτωγραφησω αρχεια με τον Rijndael ή να μου κανει μετατροπη στον παρακατω τμημα ετσι ωστε να δουλευει;

Îåêßíçóå áðü ôï ìÝëïò angarato_surion. Τελευταία δημοσίευση από το μέλος angarato_surion στις 13-02-2006, 19:33. Υπάρχουν 6 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  12-02-2006, 07:23 9566

    Μπορει να μου καποιος πως μπορω να κανω αποκρυπτωγραφησω αρχεια με τον Rijndael ή να μου κανει μετατροπη στον παρακατω τμημα ετσι ωστε να δουλευει;

    public string Decrypt(byte [] timi)
            {
                try
                {
                    int i = 0;
                    string Apotelesma;
                    byte[] fromEcrypt;
                    if (timi != null)
                    {
                        CryptoStream DecryptStream = null;
                        RijndaelManaged rijndael = new RijndaelManaged();
                        ICryptoTransform rijndaelDEncrypt = null;
                        MemoryStream memStream = new MemoryStream(timi);
                       rijndael.IV = this._IV;
                        rijndael.Key = this.Kleidi;
                        rijndaelDEncrypt = rijndael.CreateDecryptor();
                       
                        DecryptStream = new CryptoStream(memStream , rijndaelDEncrypt, CryptoStreamMode.Read);
                        fromEcrypt= new byte[timi.Length];
                        DecryptStream.Read(fromEcrypt, 0, Convert.ToInt32(timi.Length));
     
                       
                      
                      

                       Apotelesma = Convert.ToString(fromEcrypt);
                        return Apotelesma;
                    }
                    else
                    {
                        return "";
                    }
                }
                catch (Exception e)
                {
                    bclass.xeirismossfalmatwn(e);
                    return "";
                }

            }


    Μπορει να μου καποιος πως μπορω να κανω αποκρυπτωγραφησω αρχεια με τον Rijndael ή να μου κανει μετατροπη στον παραπανω τμημα ετσι ωστε να δουλευει; εχω προβλημα με αυτη την γραμμη  DecryptStream.Read(fromEcrypt, 0, Convert.ToInt32(timi.Length));

    οτι κι αν ακολυθησα απο το msdn μου εκανε τα ιδια χαλια...



    βγαζει αυτο το σφάλμα

    System.Security.Cryptography.CryptographicException: Length of the data to decrypt is invalid.
       at System.Security.Cryptography.RijndaelManagedTransform.TransformFinalBlock(Byte[] inputBuffer, Int32 inputOffset, Int32 inputCount)
       at System.Security.Cryptography.CryptoStream.Read(Byte[] buffer, Int32 offset, Int32 count)
       at Hydrobase.Hydrobase_rijndael.Decrypt(Byte[] timi) in D:\Τα_Προγραμματά_μου\.Net\Hydrobase\Hydrobase\Cryptography.cs:line 162


    Υδροβάση(Hydrobase)
    profiles :
    codeplex
    sourceforge
    google code

    Υλοποιώ εφαρμογές υπό πληρωμή απλώς επικοινωνήστε μαζί μου
  •  12-02-2006, 13:54 9574 σε απάντηση της 9566

    Απ: Μπορει να μου καποιος πως μπορω να κανω αποκρυπτωγραφησω αρχεια με τον Rijndael ή να μου κανει μετατροπη στον παρακατω τμημα ετσι ωστε να δουλευει;

    Δίμασε το fromEncrypt = new byte[timi.Length] να το κάνεις fromEncrypt = new byte[timi.Length-1]
    Το timi.Length αν είναι πχ 20 τότε το new byte[timi.Length] θα έχει μέγεθος 21, γιατί πρόκειται για την διάσταση του πίνακα που μετράει από 0.
    Δεν ξέρω καλά C# αλλά τουλάχιστον στην VB ισχύει αυτό.
    Σταύρος Βαλσάμης
    Προγραμματιστής
  •  12-02-2006, 14:30 9576 σε απάντηση της 9574

    Απ: Μπορει να μου καποιος πως μπορω να κανω αποκρυπτωγραφησω αρχεια με τον Rijndael ή να μου κανει μετατροπη στον παρακατω τμημα ετσι ωστε να δουλευει;

    παλι τα ιδια υπάρχει καποιος τροπος στον οποιο να μην νοιαζεται για το ποσο μεγαλος ειναι ο πινακας ή γενικος τι στο καλο ειναι αυτο;
    ν κανεις Pyn[20] θα γινει πινακας 20 στοιχειων.

    Υδροβάση(Hydrobase)
    profiles :
    codeplex
    sourceforge
    google code

    Υλοποιώ εφαρμογές υπό πληρωμή απλώς επικοινωνήστε μαζί μου
  •  13-02-2006, 01:32 9588 σε απάντηση της 9576

    Απ: Μπορει να μου καποιος πως μπορω να κανω αποκρυπτωγραφησω αρχεια με τον Rijndael ή να μου κανει μετατροπη στον παρακατω τμημα ετσι ωστε να δουλευει;

    try
                {
                    int i = 0;
                    string Apotelesma;
                    byte[] fromEcrypt;
                    if (timi != null)
                    {
                        CryptoStream DecryptStream = null;
                        RijndaelManaged rijndael = new RijndaelManaged();
                        ICryptoTransform rijndaelDEncrypt = null;
                        MemoryStream memStream = null;
                       rijndael.IV = this._IV;
                        rijndael.Key = this.Kleidi;
                        rijndaelDEncrypt = rijndael.CreateDecryptor();
                        fromEcrypt = Convert.FromBase64String(timi); ;
                        memStream = new MemoryStream(fromEcrypt);
                       
                        DecryptStream = new CryptoStream(memStream , rijndaelDEncrypt, CryptoStreamMode.Read);
                       
                        //DecryptStream.FlushFinalBlock();
                       
                        StreamReader strmReader = new StreamReader(DecryptStream);
                        Apotelesma = strmReader.ReadToEnd();
                        
                       
                       
                       
                       
                      
                      

                        //Apotelesma = Convert.ToBase64String(fromEcrypt2);
                       
                        return Apotelesma;
                    }
                    else
                    {
                        return "";
                    }
                }
                catch (Exception e)
                {
                    bclass.xeirismossfalmatwn(e);
                    return "";
                }

            }


    παιδια αυτο δεν πεταει σφαλμα αλλα μου αποκρυπτογραφει το μισω αρχειο απο αυτο που ειναι κωδικοποιημενο.
    δηλαδη το κωδικοποιημενο αρχειο ειναι 2kb και το αποκρυπρογραφημενο ειναι 1kb μπορειτε να μου πειτε γιατι κοβει το μισω αρχειο;

    Υδροβάση(Hydrobase)
    profiles :
    codeplex
    sourceforge
    google code

    Υλοποιώ εφαρμογές υπό πληρωμή απλώς επικοινωνήστε μαζί μου
  •  13-02-2006, 09:11 9592 σε απάντηση της 9588

    Απ: Μπορει να μου καποιος πως μπορω να κανω αποκρυπτωγραφησω αρχεια με τον Rijndael ή να μου κανει μετατροπη στον παρακατω τμημα ετσι ωστε να δουλευει;

     angarato_surion wrote:

    παιδια αυτο δεν πεταει σφαλμα αλλα μου αποκρυπτογραφει το μισω αρχειο απο αυτο που ειναι κωδικοποιημενο.
    δηλαδη το κωδικοποιημενο αρχειο ειναι 2kb και το αποκρυπρογραφημενο ειναι 1kb μπορειτε να μου πειτε γιατι κοβει το μισω αρχειο;

    Γενικά οι αλγόριθμοι κρυπτογράφησης μεγαλώνουν το μέγεθος των data, όχι μόνο κατά 100% αλλά πολλές φορές και παραπάνω. Π.χ. ο DES προκαλεί αύξηση κατά 175% περίοπου. Οπότε η μείωση του μεγέθους που παρατηρείς κατά την αποκρυπτογράφηση είναι αναμενόμενη.


    Νατάσα Μανουσοπούλου
  •  13-02-2006, 19:20 9624 σε απάντηση της 9592

    Απ: Μπορει να μου καποιος πως μπορω να κανω αποκρυπτωγραφησω αρχεια με τον Rijndael ή να μου κανει μετατροπη στον παρακατω τμημα ετσι ωστε να δουλευει;

    αλλα πάλι ειναι μισα τα δεδομένα σε σχεση με το προτότυπο...
    Υδροβάση(Hydrobase)
    profiles :
    codeplex
    sourceforge
    google code

    Υλοποιώ εφαρμογές υπό πληρωμή απλώς επικοινωνήστε μαζί μου
  •  13-02-2006, 19:33 9626 σε απάντηση της 9624

    Απ: Μπορει να μου καποιος πως μπορω να κανω αποκρυπτωγραφησω αρχεια με τον Rijndael ή να μου κανει μετατροπη στον παρακατω τμημα ετσι ωστε να δουλευει;

    αλλαξα κατι στον κωδικα που το κωδικοποιούσε και το έφτιαξα...
    μετα θα βρω και οδηγο για triDEs
    Υδροβάση(Hydrobase)
    profiles :
    codeplex
    sourceforge
    google code

    Υλοποιώ εφαρμογές υπό πληρωμή απλώς επικοινωνήστε μαζί μου
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems