Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 | 2 | 3 | 4 | 5 | 6 |

 

  Вопрос: "№*?&}sdp/#& - шифорвание и все о нем Добавлено: 04.06.08 02:37  

Автор вопроса:  __Pavel__ | Web-сайт: ммм.сайта.НЕТ

Ответить

  Ответы Всего ответов: 78  

Номер ответа: 16
Автор ответа:
 SHDZ



ICQ: 209382104 

Вопросов: 39
Ответов: 244
 Профиль | | #16 Добавлено: 19.06.08 10:21
public class Crypt
    {
        public static byte[] Encrypt(byte[] data, string password)
        {
            SymmetricAlgorithm sa = Rijndael.Create();
            ICryptoTransform ct = sa.CreateEncryptor(
                ;(new PasswordDeriveBytes(password, null)).GetBytes(16),
                new byte[16];);

            MemoryStream ms = new MemoryStream();
            CryptoStream cs = new CryptoStream(ms, ct, CryptoStreamMode.Write);

            cs.Write(data, 0, data.Length);
            cs.FlushFinalBlock();

            return ms.ToArray();
        }

        public static string Encrypt(string data, string password)
        {
            if (data == null) return "";
            return Convert.ToBase64String(Encrypt(Encoding.UTF8.GetBytes(data), password));
        }

        static public byte[] Decrypt(byte[] data, string password)
        {
            BinaryReader br = new BinaryReader(InternalDecrypt(data, password));
            return br.ReadBytes((int)br.BaseStream.Length);
        }

        static public string Decrypt(string data, string password)
        {
            if (data == null) data = "";
            try
            {
                Encoding myEncoding = Encoding.GetEncoding(1251);
                byte[] bdata = new byte[data.Length];
                bdata = myEncoding.GetBytes(data);
                CryptoStream cs = InternalDecrypt(bdata, password);
                StreamReader sr = new StreamReader(cs);
                return sr.ReadToEnd();
            }
            catch
            {
                return data;
            }
        }

//Использовать:
BufferString.Value = Crypt.Encrypt((myEncoding.GetString(abyData, 0, BreakString)).Trim()
                                        , PasswordArray[26, 78].ToString() +
                                        PasswordArray[53, 72].ToString() +
                                        Convert.ToChar(PasswordArray[13, 200];));
//пример с проги

Ответить

Номер ответа: 17
Автор ответа:
 SHDZ



ICQ: 209382104 

Вопросов: 39
Ответов: 244
 Профиль | | #17 Добавлено: 19.06.08 10:22
кстати...
using System;
using System.IO;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;
using System.Globalization;
using System.Security.Cryptography;
using System.Windows.Forms;

Ответить

Номер ответа: 18
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #18
Добавлено: 19.06.08 10:26
2 Pavel: этот алгоритм наверное на базе MD5? :) Тогда действительно, я бы не взялся за расшифровку.

Ответить

Номер ответа: 19
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #19 Добавлено: 21.06.08 16:45
> __Pavel__
Даже не знаю что сказать, Павел...


Самый совершенный на сегодняший день алгоритм:
http://en.wikipedia.org/wiki/Advanced_Encryption_Standard

... финалист конкурса AES и принятый в качестве американского стандарта шифрования правительством США...
... По состоянию на 2006 год AES является одним из самых распространённых алгоритмов симметричного шифрования...
... approved by NSA for top secret information...


А тут оказывается, некто Павел за 2 часа "сделал" лучших математиков и криптоаналитиков мира...


Если любишь криптоанализ вот тебе исходные данные
Алгоритм - AES
Данные представляют собой строку длиной не более 15 символов.
Строка кодируется UTF8.
Вектор инициализации:
{217, 14, 26, 128, 57, 238, 207, 212, 9, 89, 68, 2, 48, 34, 244, 127}

Результат шифрования закодирован в BASE64:
usZlt7ehzsPSzfvtY212iQ==


Получить исходную строку ты не сможешь, даже если очень захочешь. До тех пор пока я тебе не дам ключ.

А вот если возьмешь ключ, то легко расшифруешь:
{213, 143, 44, 182, 207, 138, 229, 65, 149, 40, 104, 36, 19, 189, 47, 63, 33, 118, 82, 245, 170, 93, 93, 163, 29, 14, 28, 196, 168, 122, 114, 1}




Чтобы проверить крутость твоего алгоритма... просто покажи его код!

Взломать то что ты написал без собственно кода непросто (я не говорю что это невозможно, но это уже вопрос к криптоаналитикам и математикам, которые на этом форуме не тусуются).

Но как только ты покажешь исходный код (не обязательно по своей воле, злоумышленник может получить код, например, украв его с компьютера жертвы), вероятность того что, зная исходную строку и зашифрованую, вычислят ключ (или, даже зная только зашифрованую строку - зависит от стойкости твоего алгоритма) очень высока.



Вобщем восторженая твоими способностями публика желает увидеть алгоритм, дабы с его помощью защищать очень важные данные и снижать мировую энтропию.

Ответить

Номер ответа: 20
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #20 Добавлено: 03.07.08 23:38
up

Ответить

Номер ответа: 21
Автор ответа:
 __Pavel__



Вопросов: 29
Ответов: 284
 Web-сайт: ммм.сайта.НЕТ
 Профиль | | #21
Добавлено: 03.07.08 23:41
напишу... напишу... щас некогда... думаю придется писать много...

Ответить

Номер ответа: 22
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #22 Добавлено: 14.07.08 20:18
up

Ответить

Номер ответа: 23
Автор ответа:
 __Pavel__



Вопросов: 29
Ответов: 284
 Web-сайт: ммм.сайта.НЕТ
 Профиль | | #23
Добавлено: 20.07.08 21:43
2 Steel Brand
ну вот... упорство вознаграждается! 16мб текста за 7сек =) а не 8мб за 4мин... кстати скорость была маленькой из-за оболочки, а не из-за алгоритма + я его доработал! но без оболочки его юзать сложновато... из-за ключа...
ну с AES я в скорости соревноваться не буду, т.к. он наверняка был написан на ассемблере, а обогнать его на VB.NET - это тоже самое что проткнуть танк вилкой =)

Ответить

Номер ответа: 24
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #24 Добавлено: 20.07.08 22:50
ну вот... упорство вознаграждается! 16мб текста за 7сек =)

Отлично, я бы хотел это увидеть!

но без оболочки его юзать сложновато... из-за ключа...

Давай короче без своей мега-оболочки ,а обычное консольное приложение и будем уже проверять

ну с AES я в скорости соревноваться не буду, т.к. он наверняка был написан на ассемблере, а обогнать его на VB.NET - это тоже самое что проткнуть танк вилкой =)

AES может быть написан на чем угодно в данном случае в .NET используется управляемая реализация написанная предположительно на C#, то есть никаких преимуществ перед твоим кодом она не получает.

Короче хватит уже лапать языком, показывай код и будем разбираться, тем более, как показал опыт, после того как ты показывешь код, становится намного веселее!

Ответить

Номер ответа: 25
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #25 Добавлено: 21.07.08 00:36
Ну давай уже побыстрее, мне не терпится просто!

Ответить

Номер ответа: 26
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #26 Добавлено: 23.07.08 17:00
up

Ответить

Номер ответа: 27
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #27 Добавлено: 24.07.08 23:37
бедняга павел не знает куда деваться :)

Ответить

Номер ответа: 28
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #28 Добавлено: 25.07.08 00:08
__Pavel__, на самом деле.. да не стремайся ты.. 5 минут позора и всех делов.. Выкладывай уже код.. он ведь не отстанет от тебя! ))))

Ответить

Номер ответа: 29
Автор ответа:
 __Pavel__



Вопросов: 29
Ответов: 284
 Web-сайт: ммм.сайта.НЕТ
 Профиль | | #29
Добавлено: 25.07.08 01:15
не ну что вы все налетели!!! =)
сказал же что без презентации не выставлю... а писать и времени нет и лень =)

Ответить

Номер ответа: 30
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #30 Добавлено: 25.07.08 01:53
Да нету у Паши никакого кода! :)
И презентацию писать не о чем :)

Просто захотел попонтоваться тем какой он нереально крутой хакер :)

Но если за бутылкой пива (распитой на четверых) с друзьями такие басни прокатывают, и если друзья просто в шоке от знания Паши, то на форуме такие понты нужно обосновывать, а вот с обоснованием у Паши не сложилось :)

Ответить

Страница: 1 | 2 | 3 | 4 | 5 | 6 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам