Author

Topic: Не удалось создать защищенный канал SSL/TLS. (Read 214 times)

legendary
Activity: 2314
Merit: 2300
Quote
В транзакции его нет. Это timestamp блока.
То есть вообще непонятно, когда транзакция сформировалась? И поэтому момент поступления средств считать моментом формирования  блока, ибо тогда ее все увидели?

Да. Это такая фича криптовалют. Пока транзакция не в блоке - считайте, что её нет.

Quote
И еще некоторые непонятны.
Если я делаю такой вот запрос к https://blockchain.info:
https://blockchain.info/multiaddr?active=bc1q9sh6544xls87x7skjzyfhkty4wq7z76vn7qzq9
у меня говорит: https://blockchain.info/multiaddr?active=bc1q9sh6544xls87x7skjzyfhkty4wq7z76vn7qzq9
Invalid Bitcoin Address

По другим кошелькам нормально выдает транзакцию.
По тому же кошельку bc1q9sh6544xls87x7skjzyfhkty4wq7z76vn7qzq9
сервис https://bitinfocharts.com выдает график и таблицу движений: https://bitinfocharts.com/ru/bitcoin/address/bc1q9sh6544xls87x7skjzyfhkty4wq7z76vn7qzq9

Это как понимать, сервис https://blockchain.info глючит?

blockchain.info не поддерживает адреса формата Bech32.
newbie
Activity: 19
Merit: 1
Quote
В транзакции его нет. Это timestamp блока.
То есть вообще непонятно, когда транзакция сформировалась? И поэтому момент поступления средств считать моментом формирования  блока, ибо тогда ее все увидели?

И еще некоторые непонятны.
Если я делаю такой вот запрос к https://blockchain.info:
https://blockchain.info/multiaddr?active=bc1q9sh6544xls87x7skjzyfhkty4wq7z76vn7qzq9
у меня говорит: https://blockchain.info/multiaddr?active=bc1q9sh6544xls87x7skjzyfhkty4wq7z76vn7qzq9
Invalid Bitcoin Address

По другим кошелькам нормально выдает транзакцию.
По тому же кошельку bc1q9sh6544xls87x7skjzyfhkty4wq7z76vn7qzq9
сервис https://bitinfocharts.com выдает график и таблицу движений: https://bitinfocharts.com/ru/bitcoin/address/bc1q9sh6544xls87x7skjzyfhkty4wq7z76vn7qzq9

Это как понимать, сервис https://blockchain.info глючит?
full member
Activity: 1246
Merit: 138
Hodl DeepOnion
То есть ее не через нугет пакеты надо ставить, а скачать проект и прицепить его к моему решению, а там указать фреймворк?
....
Вот не пойму почему так.
Что вообще обозначает поле "time":1553238932, в транзакции? Момент когда пользователь сформировал транзакцию, момент когда она в блок была включена ли когда была подтверждена?

Посмотрел - там у них свежая версия на Стандарте, значит можно и в 4.6.1 и выше использовать. Создаешь проект и через Нугет ставишь, примеры подробные https://github.com/blockchain/api-v1-client-csharp/blob/master/docs/blockexplorer.md .

Попробовал - работает.

И не нужно с парсингом возиться.
sr. member
Activity: 1316
Merit: 420
KTO EC/\U HUKTO?
Что вообще обозначает поле "time":1553238932, в транзакции? Момент когда пользователь сформировал транзакцию, момент когда она в блок была включена ли когда была подтверждена?

В транзакции его нет. Это timestamp блока.
newbie
Activity: 19
Merit: 1
Quote
Там на Коре 1 идет, но можно изменить на фреймворк
То есть ее не через нугет пакеты надо ставить, а скачать проект и прицепить его к моему решению, а там указать фреймворк?

Quote
По поводу result:5005 не скажу, может тут вообще не о сумме речь идет? 22 марта все таки позднее 21
Я сморю сюда:
https://bitinfocharts.com/ru/bitcoin/address/385cR5DM96n1HvBDMzLHPYcw89fZAXULJP
тут история отсортированая в обратном порядке (сначала новые потом старые даты), транзакции по АПИ в таком же порядке, и что в result совпадает с суммой, но сдвинуто на 1 в сторону старых  дат.
Но фактический эта сумма фигурирует в выходах за ту дату, которая стоит в таблице остатков из https://bitinfocharts.com/ru/bitcoin/address/385cR5DM96n1HvBDMzLHPYcw89fZAXULJP
   "out":[
      {
         "spent":false,
         "tx_index":427293982,
         "type":0,
         "addr":"1AVGjEN5wuHZacY2NCk4KxDstoXZDMh2A",
         "value":1346,
         "n":0,
         "script":"76a91401cb57ded602c21d050856ef3f9f8bbe006462f488ac"
      },
      {
         "spent":false,
         "tx_index":427293982,
         "type":0,
         "addr":"385cR5DM96n1HvBDMzLHPYcw89fZAXULJP",
         "value":5005,
         "n":1,
         "script":"a9144616b2c00cfc401861b98e86ccce47a683ed63da87"
      }
   ],

Вот не пойму почему так.
Что вообще обозначает поле "time":1553238932, в транзакции? Момент когда пользователь сформировал транзакцию, момент когда она в блок была включена ли когда была подтверждена?
full member
Activity: 1246
Merit: 138
Hodl DeepOnion
Quote

Вот она что-то не ставится. говорит:
Quote
Серьезность   Код   Описание   Проект   Файл   Строка   Состояние подавления
Ошибка      Не удалось установить пакет «BlockchainAPI 4.0.0». Вы пытаетесь установить этот пакет в проект, требуемая версия платформы которого — «.NETFramework,Version=v4.7.1», но в пакете нет ссылок на сборки или файлов содержимого, совместимых с этой платформой. Дополнительную информацию можно получить у автора пакета.            

Кстати, еще такой интересный момент, в Json есть поле

Там на Коре 1 идет, но можно изменить на фреймворк

Quote
The library requires .NET Core 1.1. It is possible to use this library with the .NET Framework by editing Info.Blockchain.Api.csproj

and changing

netcoreapp1.1

to your project's .NET version, e.g.

net46

По поводу result:5005 не скажу, может тут вообще не о сумме речь идет? 22 марта все таки позднее 21
newbie
Activity: 19
Merit: 1
Quote
используй
[JsonProperty("out")]

спасибо.

Quote

Вот она что-то не ставится. говорит:
Quote
Серьезность   Код   Описание   Проект   Файл   Строка   Состояние подавления
Ошибка      Не удалось установить пакет «BlockchainAPI 4.0.0». Вы пытаетесь установить этот пакет в проект, требуемая версия платформы которого — «.NETFramework,Version=v4.7.1», но в пакете нет ссылок на сборки или файлов содержимого, совместимых с этой платформой. Дополнительную информацию можно получить у автора пакета.            

Кстати, еще такой интересный момент, в Json есть поле

"result":5005, я так понимаю что это результат транзакции. Но только вот как-то странно, он сдвинут на 1 транзакцию назад. То есть, вот история по кошельку 385cR5DM96n1HvBDMzLHPYcw89fZAXULJP

568252   2019-03-22 10:16:44   +0.00005005 BTC   128,004.91059223 BTC   $511,052,121 @ $3,992.44
568097   2019-03-21 11:02:02   +0.00000546 BTC   128,004.91054218 BTC   $519,012,907 @ $4,054.63
567044   2019-03-14 19:34:50   +0.00001 BTC   128,004.91053672 BTC   $496,525,109 @ $3,878.95

Первая транзакция (от 22 марта) "result":0
и только следующая за ней с датой от 21 марта имеет "result":5005?
Непонятно, когда фактически поступили 0.00005005 BTC на кошелек, 22 марта, или все таки 21-ого?
full member
Activity: 1246
Merit: 138
Hodl DeepOnion
Quote
По поводу протоколов, вроде как старые версии студии (фреймворков?) не поддерживают новые протоколы, но могу ошибиться.

После установки новый фрейморков новые протоколы не добавились, как было максимум SecurityProtocolType.Tls12, так и осталось

Кстати, не подскажите как решить внезапно всплывшую проблему?
В Json-е есть такое:

Quote
"out":[
      {
         "spent":false,
...
...

Но я не могу объявить структуру типа public List<МойКласс> out; - ибо ключевое слово.
То есть получается не будет работать конструкция
Code:
history = JsonConvert.DeserializeObject(reader.ReadToEnd());

Как тут быть? В самом тексте Json-перед распарсиванием заменить out на что-то иное или есть другое, более красивое решение?

используй
[JsonProperty("out")]

т.е. вроде

    // rename property
    [JsonProperty("out")]
    public IList myout{ get; set; }


P.S. А разве их АПИ https://www.blockchain.com/ru/api не облегчает использование?
Вот их библиотека https://github.com/blockchain/api-v1-client-csharp
newbie
Activity: 19
Merit: 1
Quote
По поводу протоколов, вроде как старые версии студии (фреймворков?) не поддерживают новые протоколы, но могу ошибиться.

После установки новый фрейморков новые протоколы не добавились, как было максимум SecurityProtocolType.Tls12, так и осталось

Кстати, не подскажите как решить внезапно всплывшую проблему?
В Json-е есть такое:

Quote
"out":[
      {
         "spent":false,
...
...

Но я не могу объявить структуру типа public List<МойКласс> out; - ибо ключевое слово.
То есть получается не будет работать конструкция
Code:
history = JsonConvert.DeserializeObject(reader.ReadToEnd());

Как тут быть? В самом тексте Json-перед распарсиванием заменить out на что-то иное или есть другое, более красивое решение?
full member
Activity: 1246
Merit: 138
Hodl DeepOnion
Еще вопрос в догонку.
В этом JSON информация о дате и времени типа "time":1552580349,
в какой формате? Как ее в нормальное время перевести?

Quote
Может протоколов задать больше?

ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;

И так делал. И точно также не работало. Только после установки VS 2017 и NetFramework 4.7.1 заработало. Но никак не понимаю, какая тут связь??

Это в Юниксовом http://www.onlineconversion.com/unix_time.htm

Много вариантов обработать, например так https://stackoverflow.com/questions/249760/how-can-i-convert-a-unix-timestamp-to-datetime-and-vice-versa

По поводу протоколов, вроде как старые версии студии (фреймворков?) не поддерживают новые протоколы, но могу ошибиться.
newbie
Activity: 19
Merit: 1
Еще вопрос в догонку.
В этом JSON информация о дате и времени типа "time":1552580349,
в какой формате? Как ее в нормальное время перевести?

Quote
Может протоколов задать больше?

ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;

И так делал. И точно также не работало. Только после установки VS 2017 и NetFramework 4.7.1 заработало. Но никак не понимаю, какая тут связь??
full member
Activity: 1246
Merit: 138
Hodl DeepOnion
Может протоколов задать больше?

ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;
newbie
Activity: 19
Merit: 1
Действительно странно.
После того как перевел проект на NetFramework 4.7.1 и поднял Visual studio с 2015 до 2017 заработало.

Хотя, непонятно, почему не ставится BlockchainAPI, выдавая сообщение:

Quote
Серьезность   Код   Описание   Проект   Файл   Строка   Состояние подавления
Ошибка      Не удалось установить пакет «BlockchainAPI 4.0.0». Вы пытаетесь установить этот пакет в проект, требуемая версия платформы которого — «.NETFramework,Version=v4.7.1», но в пакете нет ссылок на сборки или файлов содержимого, совместимых с этой платформой. Дополнительную информацию можно получить у автора пакета.      
      

Кстати, а стоит ли вообще ставить BlockchainAPI, кто-нибудь работал с ним?
legendary
Activity: 2314
Merit: 2300
Все равно та же самая ошибка на строке
Code:
using (WebResponse httpResponse = request.GetResponse())

Странно как-то. У меня прямо сейчас вот этот код выводит в консоль ответ в формате JSON без всяких ошибок:
Code:
        static void Main(string[] args)
        {
            string url = @"https://blockchain.info/rawaddr/385cR5DM96n1HvBDMzLHPYcw89fZAXULJP";
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
           
            using (WebResponse httpResponse = request.GetResponse())
            {
                using (StreamReader reader = new StreamReader(httpResponse.GetResponseStream()))
                {
                    Console.WriteLine(reader.ReadToEnd());
                }
            }           
        }
member
Activity: 172
Merit: 11
Все равно та же самая ошибка на строке

Code:
using (WebResponse httpResponse = request.GetResponse())

Там по моему токен нужен для SSL. То есть твой request  надо дополнить параметрами SSL
newbie
Activity: 19
Merit: 1
Все равно та же самая ошибка на строке

Code:
using (WebResponse httpResponse = request.GetResponse())
legendary
Activity: 2314
Merit: 2300
Подскажите, пожалуйста, что делаю не так?

Будьте проще:

Code:
string url = @"https://blockchain.info/rawaddr/385cR5DM96n1HvBDMzLHPYcw89fZAXULJP";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
           
using (WebResponse httpResponse = request.GetResponse())
{
   using (StreamReader reader = new StreamReader(httpResponse.GetResponseStream()))
   {
      history = JsonConvert.DeserializeObject(reader.ReadToEnd());
   }
}
newbie
Activity: 19
Merit: 1
Добрый день.
Пытаюсь через АПИ blockchain.info закачать историю кошелька:

Code:
            string url = @"https://blockchain.info/rawaddr/385cR5DM96n1HvBDMzLHPYcw89fZAXULJP";
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);

            request.Method = "GET";
            request.Accept = "application/json";
            request.UserAgent = "Mozilla/5.0 ....";

            ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
            WebResponse httpResponse = request.GetResponse();
            StreamReader reader = new StreamReader(httpResponse.GetResponseStream());

            history = JsonConvert.DeserializeObject(reader.ReadToEnd());

Код на C#.

И почему то на строке
Code:
WebResponse httpResponse = request.GetResponse();

Вылетает с ошибкой:
Quote
Additional information: Запрос был прерван: Не удалось создать защищенный канал SSL/TLS

Подскажите, пожалуйста, что делаю не так?
Jump to: