Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
1 / 1 / 2
Регистрация: 26.08.2013
Сообщений: 381

Декодировать байты (в base64) в просто байты

31.01.2016, 12:57. Показов 2609. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, нужно декодировать байты, которые зашифрованы в base64 в нормальные баты
вот код :
C#
1
2
3
4
5
6
7
8
9
 internal sbyte[] mSecret;
 
        public Token(JSONObject json)
        {
            string sSecret = "stroka";
            if (sSecret != null && sSecret.Length > 0)
            {
                this.mSecret = Convert.FromBase64String(sSecret.GetBytes()); // как вы понимаете, нужна альтернатива.                   //FromBase64String
            }
т.к mSecret это sbyte , то она выдает ошибку. Можете помочь ?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.01.2016, 12:57
Ответы с готовыми решениями:

Декодировать base64 и забросить в string
Собираю с сайта base64: SGVsbG8sIFdvcmxk (hello, World) Так вот, как этот SGVsbG8sIFdvcmxk декодировать и добавить в string s? ...

Декодировать Base64 картинку созданную TotalCommander
взял картинку, закодировал ее через TotalCommander в Base64, потом раскодировал следующим кодом using System; using...

Декодировать и закодировать MD5 (base64) hash
Нужно закодировать пароль. Есть пароль zeonefergma, в MD5 (base64) как его определяют многие сайты и программы он закодирован так...

7
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
31.01.2016, 13:01
Цитата Сообщение от vuasya Посмотреть сообщение
т.к mSecret это sbyte , то она выдает ошибку
А ему обязательно быть массивом sbyte? Отрицательные числа имеют какую-то смысловую нагрузку?
0
1 / 1 / 2
Регистрация: 26.08.2013
Сообщений: 381
31.01.2016, 13:05  [ТС]
Цитата Сообщение от kolorotur Посмотреть сообщение
А ему обязательно быть массивом sbyte?
да. Я просто перевожу код с java, а как известно byte в java это sbyte в c#
Цитата Сообщение от kolorotur Посмотреть сообщение
Отрицательные числа имеют какую-то смысловую нагрузку?
вот тут не знаю (
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
31.01.2016, 13:10
Цитата Сообщение от vuasya Посмотреть сообщение
byte в java это sbyte в c#
Там просто нет беззнаковых байтов. Но из этого не обязательно следует, что в данном случае знак важен.

Цитата Сообщение от vuasya Посмотреть сообщение
вот тут не знаю (
Ну там дальше по коду есть где-то проверка этих значений на отрицательные или какие-то математические операции с ними?
Если нет, то это можно считать атавизмом и заменить на обычный byte[].

Если все-таки нужно именно sbyte[], то делайте каст:
C#
1
this.mSecret = Convert.FromBase64String((byte[])(Array)sSecret.GetBytes());
0
1 / 1 / 2
Регистрация: 26.08.2013
Сообщений: 381
31.01.2016, 14:15  [ТС]
Цитата Сообщение от kolorotur Посмотреть сообщение
Если все-таки нужно именно sbyte[], то делайте каст:

this.mSecret = Convert.FromBase64String((byte[])(Array)sSecret.GetBytes());
все равно дает ошибку "byte[] в string невозможно"

Цитата Сообщение от kolorotur Посмотреть сообщение
Ну там дальше по коду есть где-то проверка этих значений на отрицательные или какие-то математические операции с ними?
вродь нет. Единственное его применение в этой строке :
Delphi
1
SecretKeySpec signKey = new SecretKeySpec(this.mSecret, "HmacSHA1");
Кстати, не подскажите, как подключить библиотеку SecretKeySpec ? ведь в java она встроена, а в c# ее нет
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
31.01.2016, 14:48
Цитата Сообщение от vuasya Посмотреть сообщение
все равно дает ошибку "byte[] в string невозможно"
А, там From, а не To.
Что находится в переменной sSecret?
Там, похоже, нужно наоборот: 64-base строку в массив байт, нет?

Цитата Сообщение от vuasya Посмотреть сообщение
вродь нет.
Ну и замените ее тогда на byte[].

Цитата Сообщение от vuasya Посмотреть сообщение
как подключить библиотеку SecretKeySpec ?
Никак, нужно искать аналог на шарпе.
0
1 / 1 / 2
Регистрация: 26.08.2013
Сообщений: 381
31.01.2016, 15:10  [ТС]
Цитата Сообщение от kolorotur Посмотреть сообщение
Что находится в переменной sSecret?
там находится зашифрованный текст base64
Если юзать так :
C#
1
this.mSecret = Convert.ToBase64String((byte[])(Array)sSecret.GetBytes());
то говорит "неявное преобразование типа string в byte[]

А если
C#
1
this.mSecret = Convert.FromBase64String((byte[])(Array)sSecret.GetBytes());
то "Аргумент "1": преобразование типа из "byte[]" в "string" невозможно"
0
1 / 1 / 2
Регистрация: 26.08.2013
Сообщений: 381
02.02.2016, 16:48  [ТС]
уже какой день мучаюсь, чет не получается (
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.02.2016, 16:48
Помогаю со студенческими работами здесь

При кодировании в base64 русских букв не удается потом декодировать текст
Здравствуйте, подскажите пожалуйста как правильно закодировать строку в base64, знаю что с кириллицей у этой кодировки проблемы, но как...

Байты в картинку )
Перевожу в байты Bitmap BM = new Bitmap(pictureBox1.Image); MS = new System.IO.MemoryStream(); ...

Стринги и байты
По нажатию на 1 кнопку OpenFileDialog qqq = new OpenFileDialog(); if (ofd.ShowDialog() == DialogResult.OK) ...

Байты в биты
Здравствуйте коллеги! Подскажите пожалуйста,каким образом можно байт разложить на составляющие биты. 1байт в 8 бит??? допустим у...

Байты в биты
Как перевести байты в биты, причем так, чтобы самому можно было выбирать, какие биты бы соответствовали байтам. То есть, к примеру, символ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 01.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 31.01.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru