Перейти к содержимому

Stackoverflow top secret что это

  • автор:

Зашифровать перезаписываемый файл в С#

есть бот помощник для биржи, помогите с защитой.Он создаёт текстовый файл с апи и секретом в каталоге, но как его не засовывай все равно легко найти, как можно его зашифровать или вообще что бы не писал ,мне достаточно если я в коде где то его пропишу и все раз и навсегда.

 /// /// загрузить настройки сервера из файла /// public void Load() < if (!File.Exists(@"socket\" + @"api.txt")) < return; >try < using (StreamReader reader = new StreamReader(@"socket\" + @"api.txt")) < UserId = reader.ReadLine(); UserKey = reader.ReadLine(); _countDaysTickNeadToSave = Convert.ToInt32(reader.ReadLine()); _neadToSaveTicks = Convert.ToBoolean(reader.ReadLine()); IsDemo = Convert.ToBoolean(reader.ReadLine()); reader.Close(); >> catch (Exception) < // ignored >> /// /// сохранить настройки сервера в файл /// public void Save() < try < using (StreamWriter writer = new StreamWriter(@"socket\" + @"api.txt", false)) < writer.WriteLine(UserId); writer.WriteLine(UserKey); writer.WriteLine(CountDaysTickNeadToSave); writer.WriteLine(NeadToSaveTicks); writer.WriteLine(IsDemo); writer.Close(); >> catch (Exception) < // ignored >> 

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

 static void Main(string[] args) < ushort secretKey = 0x0088; // Секретный ключ (длина - 16 bit). string str = "Hello World"; //это строка которую мы зашифруем str = EncodeDecrypt(str, secretKey); //производим шифрование Console.WriteLine(str); //выводим в консоль зашифрованную строку str = EncodeDecrypt(str, secretKey); //производим рассшифровку Console.WriteLine(str); //выводим в консоль расшифрованную строку Console.ReadKey(); >public static string EncodeDecrypt(string str, ushort secretKey) < var ch = str.ToArray(); //преобразуем строку в символы string newStr = ""; //переменная которая будет содержать зашифрованную строку foreach (var c in ch) //выбираем каждый элемент из массива символов нашей строки newStr += TopSecret(c, secretKey); //производим шифрование каждого отдельного элемента и сохраняем его в строку return newStr; >public static char TopSecret(char character, ushort secretKey) < character = (char)(character ^ secretKey); //Производим XOR операцию return character; >

Или вот тоже пример но как его применить не пойму:

// Шифруем текст, и записываем его в файл FileStream stream = new FileStream("C:\\mytext.txt", FileMode.OpenOrCreate, FileAccess.Write); DESCryptoServiceProvider cryptic = new DESCryptoServiceProvider(); cryptic.Key = ASCIIEncoding.ASCII.GetBytes("ABCDEFGH"); cryptic.IV = ASCIIEncoding.ASCII.GetBytes("ABCDEFGH"); CryptoStream crStream = new CryptoStream(stream, cryptic.CreateEncryptor(),CryptoStreamMode.Write); byte[] data = ASCIIEncoding.ASCII.GetBytes("Hello World!"); crStream.Write(data,0,data.Length); crStream.Close(); stream.Close(); //Дешифруем текст и выводим результат дешифрации в консоль FileStream stream = new FileStream("C:\\mytext.txt", FileMode.Open,FileAccess.Read); DESCryptoServiceProvider cryptic = new DESCryptoServiceProvider(); cryptic.Key = ASCIIEncoding.ASCII.GetBytes("ABCDEFGH"); cryptic.IV = ASCIIEncoding.ASCII.GetBytes("ABCDEFGH"); CryptoStream crStream = new CryptoStream(stream, cryptic.CreateDecryptor(),CryptoStreamMode.Read); StreamReader reader = new StreamReader(crStream); string data = reader.ReadToEnd(); Console.WriteLine(data); Console.ReadKey(); reader.Close(); stream.Close(); 

Как находить кандидатов на Stack Overflow

Мы поговорили про сорсинг на Stack Overflow с Русланом Сарваровым из компании Evrone.

Руслан рассказал, чем Q&A-сервис для разработчиков полезен рекрутерам, как вести внутренний и внешний поиск кандидатов, а также объяснил, как составлять SQL-запросы к базе данных пользователей, если не знаешь SQL.

Руслан Сарваров, Recruitment Lead в Evrone, автор канала SR4HR

Что такое Stack Overflow и кого там искать

Stack Overflow — это Q&A-сервис для айтишников, где одни люди задают вопросы, а другие отвечают. По сути, это огромная база знаний, с помощью которой IT-специалисты решают свои боевые задачи.

Аудитория сайта насчитывает свыше 100 миллионов человек со всего мира. Среди пользователей не только разработчики, а все, кто пишет код, в том числе ML-инженеры и автотестировщики.

Особенности сервиса

Легче оценить экспертность кандидата

Если зайти в профиль пользователя на GitHub, то можно посмотреть написанный им код и понять, какие языки программирования он знает. Но зачастую рекрутеры недостаточно глубоко разбираются в коде — им сложно определить, чем конкретно занимается кандидат и в чем он эксперт.

Эту задачу легче решить на Stack Overflow: здесь можно почитать ветки по вопросам, в обсуждениях которых участвует пользователь. Это позволяет более детально проанализировать его опыт, понять интересы и проблемы.

Сложно искать информацию о кандидате

В целом это сервис, где айтишники могут обмениваться знаниями и опытом, не подвергаясь атакам рекрутеров. Именно поэтому внутренний поиск Stack Overflow ориентирован на сбор информации по конкретным темам, а не на сканирование профилей пользователей. К счастью, эти ограничения можно обойти — еще расскажу как.

Еще недавно на Stack Overflow были инструменты для работодателей:

  • Jobs — можно было публиковать вакансии, разбирать отклики и писать кандидатам;
  • Salary Calculator — калькулятор зарплат и аналитика вилок по каждому стеку технологий;
  • Developer Story — резюме в профиле пользователя.

Ни один из этих продуктов больше не работает: создатели Stack Overflow решили, что не стоит превращать сервис в очередной джоб-сайт.

Stack Overflow — не основной, а дополнительный канал поиска

У вас не получится отправить пользователю личное сообщение внутри сервиса: такой функции нет. Скорее всего, вы не сможете понять, открыт ли кандидат к предложениям — если только он сам не напишет об этом в профиле.

Типичный сценарий использования сервиса: нашли кандидата на LinkedIn или GitHub, а потом перешли в его аккаунт на Stack Overflow, чтобы оценить опыт и понять, за что стоит зацепиться на интервью. Или наоборот: встретили подходящего специалиста на Stack Overflow, а потом нашли его аккаунты в других соцсетях и платформах.

X-ray-поиск по Developer Story

Раньше внутри профиля пользователя был специальный раздел Developer Story. Он выглядел как полноценное резюме с контактными данными и информацией о предыдущих местах работы и образовании:

Сейчас все эти страницы недоступны, но благодаря кэшу гугла их можно просматривать. Например, найдем резюме golang-разработчиков, которые в своих навыках указали Kubernetes. Запрос будет таким:

site:stackoverflow.com/cv (“golang * “|“go * “) “kubernetes“

Раньше Developer Story (резюме) хранились по адресу stackoverflow.com/cv. А с помощью символа * мы сообщаем гуглу о том, что после ключевого слова может идти какой угодно текст.

В результате мы получаем поисковую выдачу. Но при попытке перейти по любой ссылке система сообщает, что Page not found. К счастью, все удаленные страницы еще хранятся в памяти гугла: чтобы открыть страницу, нажмите на значок с треугольником и кликните по ссылке «Сохраненная копия»:

В основном таким Х-ray-запросом я находил резюме разработчиков уровня «сениор» и выше — с опытом от 3 до 5 лет в определенном стеке. Реже встречаются джуны и мидлы.

Чтобы сохранить поисковую выдачу, советую использовать расширение Instant Data Scrapper. Оно сформирует таблицу, где будут ссылки на кэшированные страницы:

X-ray-поиск по профилям пользователей

Профили всех пользователей хранятся по адресу stackoverflow.com/users. Причем помимо глобального Stack Overflow есть русскоязычный сегмент — он находится на поддомене ru.stackoverflow.com.

Искать только по русскоязычным пользователям можно двумя способами:

Поиск по поддомену ru позволяет сузить выдачу. Например, если написать site:ru.stackoverflow.com/users ios swift, то гугл покажет около 200 профилей, а по запросу site:stackoverflow.com/users ios swift Russia — более 500.

Далеко не во всех профилях есть контакты. Но можно поискать среди пользователей, которые указали свой LinkedIn: cсылка будет в блоке About или в информации под фото. Составляем запрос:

site:stackoverflow.com/users ios|swift “linkedin.com/in/ *“ Russia

Stack Overflow — это не джоб-сайт, поэтому большинство пользователей не ищут работу. Но те, кто открыт к предложениям, иногда используют фразу looking for — за это можно зацепиться в запросе:

site:stackoverflow.com/users “Data Science“ “looking for“

Поиск через Stack Exchange Data Explorer

Stack Exchange Data Explorer — это сервис для поиска по базе пользователей Stack Overflow с помощью SQL-запросов. Если вы не знаете язык SQL, не беда, есть инструменты, которые помогут сформировать нужный запрос.

Генератор SQL-запросов

Этот сервис создает запрос под ваши требования. Можно задать местоположение и скиллы, выбрать обладателей конкретных бейджей от Stack Overflow:

В правой колонке автоматически формируется SQL-запрос. При нажатии на голубую кнопку текст копируется в буфер, а вас перекидывает на Stack Exchange Data Explorer, где можно отправить запрос.

Готовые скрипты

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

Например, я нашел интересный скрипт, который необходимо настроить: указать локацию поиска в User.Location и скиллы (язык программирования или фреймворки) в Tags.TagName. Скрипт формирует таблицу, где по каждому пользователю есть информация:

  1. Ссылка на профиль в Stack Overflow.
  2. Репутация — формируется за счет ответов на вопросы и является частью системы геймификации Stack Overflow.
  3. Ссылка на веб-сайт, который указан в профиле.
  4. Предполагаемые ссылки на GitHub, LinkedIn и Telegram — формируются путем подстановки никнейма пользователя на Stack Overflow. Это сработает, только если человек использует один и тот же никнейм в разных соцсетях.

Есть готовый запрос для поиска по стеку и локации — надо только заполнить поля TagName и LocationName, а потом нажать кнопку Run Query. Например, если вбить Rust и Moscow, то получим выдачу из 50 профилей.

Внутренний поиск

Поиск по темам

Внутренний поиск Stack Overflow ориентирован не на людей и их навыки, а на темы и сообщения. Допустим, вам требуется информация по какой-то проблеме — делаете запрос и смотрите решения.

А вот получить выборку из всех java-разработчиков из Москвы не получится: этих фильтров просто нет во внутреннем поиске. С такими запросами лучше сразу идти на GitHub, LinkedIn или классические джоб-борды.

Но зато вы можете найти человека, который разбирается в узкой теме. Сценарий поиска такой:

  1. Рекрутер знает о проблеме, которую решает команда разработки.
  2. Он вбивает запрос по этой проблеме в поисковую строку на Stack Overflow.
  3. Затем читает обсуждения и пытается связаться с людьми, которые его заинтересовали.

Однажды таким способом я искал Reverse Engineer — это редкий специалист, который занимается информационной безопасностью и исследованиями. Я нашел кандидата и довел его до оффера, который тот, увы, так и не принял.

Для понимания работы операторов поиска по темам нужно изучить официальную документацию Stack Overflow.

Поиск синонимов

Stack Overflow можно использовать не только для поиска кандидатов — это еще и полезная база знаний для рекрутера, который начал работать с новой вакансией.

Допустим, вы впервые ищете ML-инженера и не знаете, какие ключевые слова использовать. Можно отправиться в гугл: разбираться в статьях, где обычно много воды, вычленять ключевики, пытаться докопаться до сути. Но есть более простой и быстрый способ — перейти в раздел «Метки» на Stack Overflow, найти нужную технологию, посмотреть описание и связанные с ней ключевые слова:

Для чего подходит Stack Overflow

Если нужен редкий специалист

Если ищете специалиста с редкой экспертизой или сочетанием скиллов, то Stack Overflow — хороший выбор. За классическими джавистами, питонистами, php-разработчиками и гошниками можно отправляться в другие источники, более удобные для рекрутинга.

Если нужна «звезда»

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

Если вы охотитесь за конкретным кандидатом, то можете найти его на Stack Overflow. Почитайте, что он пишет в обсуждениях, чем интересуется — это помогает понять, как построить диалог со звездным собеседником.

Если надо изучить стек технологий

Чтобы построить конструктивный диалог с кандидатом, рекрутер должен говорить с ним на одном языке. А для этого нужно хотя бы минимально, но разбираться в предметной области: знать свой стек технологий, основные фреймворки и обсуждаемые темы.

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

Еще про сорсинг в блоге Хантфлоу:

  • Рекрутинг в LinkedIn: часть 1 и часть 2
  • Сорсинг на GitHub
  • Инструменты сорсинга: обзор для начинающих
  • 25 ресурсов для обучения сорсингу
  • 11 нестандартных источников для сорсинга
  • Руководство по сорсингу от Нарека Асликяна
  • Как развиваться сорсеру

Главное про сорсинг на Stack Overflow

  1. На Stack Overflow можно найти любых специалистов, которые пишут код.
  2. При этом сервис не очень удобен для рекрутеров: нет возможности писать личные сообщения, контакты часто отсутствуют, сложно понять, ищет ли кандидат работу.
  3. Stack Overflow удалил страницы с резюме (Developer Story) из профилей пользователей, но они остались в памяти гугла и все еще доступны для X-ray-поиска.
  4. Профили хранятся по адресу stackoverflow.com/users. Чтобы в выборке были только русскоязычные пользователи, ищите по русскоязычному сегменту (ru.stackoverflow.com/users) или используйте ключевое слово Russia.
  5. Применяйте Stack Exchange Data Explorer, чтобы искать по всей базе пользователей с помощью SQL-запросов. Если не знаете SQL, то воспользуйтесь готовыми скриптами или генератором запросов.
  6. Внутренний поиск Stack Overflow довольно бесполезен, потому что ориентирован на темы и вопросы, а не на людей и их скиллы. Однако его можно использовать, чтобы найти экспертов для решения какой-то специфической проблемы.
  7. Поиск по меткам — спасение для рекрутера, который хочет подобрать синонимы, но не готов копаться в гугле, вычленяя ключевые слова и разбираясь с новым для себя стеком.
  8. Если вам нужна «звезда», ее можно встретить среди пользователей с высокой репутацией.

1 апреля

Вы сейчас телевизор слышали [РОССИЯ 1] 2020.03.31 17-00 ?

1 апреля half life 2 рептилоиды

Удаленные первоапрельские темы

«List as Js» или попросту listass

1 апреля python тупняк

1 апреля google google maps

Что для вас «день дурака»? Празднуете?

1 апреля ненужно нужно

Ваша операционная система не поддерживается.

1 апреля нет пути шиндовс

1 апреля lor вещества

А куда дэлся новост?

1 апреля rss вброс

В Госдуме предложили бороться с псевдонаучными педерачами

1 апреля телевидение

Разработка DBus и Glib2 прекращена в пользу libsystemd-bus и Glib3

1 апреля gnome systemd

Ну, и где шутки на главной?

1 апреля lor маразм

Верните новость про confd

1 апреля почта россии правила

1 апреля пятница

а вот интересно

1 апреля новости

1 апреля 4.2 удаленные

Срочные новости! Arch Linux признали наиболее дружелюбным дистрибутивом.

1 апреля arch linus torvalds

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

Три условия одновременно: нужно на вопрос с 0 комментариев дать ответ с 0 комментариев, и ответ должен набрать рейтинг +7. Удаленные комментарии всё равно считаются.

введите сюда описание изображения

Отслеживать
ответ дан 18 дек 2015 в 6:21
Nick Volynkin Мод Nick Volynkin
34k 8 8 золотых знаков 78 78 серебряных знаков 216 216 бронзовых знаков

Cleanup Crew

Для этой шляпы нужно удалить 30 комментариев

введите сюда описание изображения

Отслеживать
собственных же?
18 дек 2015 в 12:29

@NickVolynkin, а это под вопросом. Возможно, не собственных тоже, но это уже модератор может проверить.

18 дек 2015 в 12:33
удалил, что-то не дают шапку.
18 дек 2015 в 12:55

@NickVolynkin, на складе закончилось, наверное.) Возможно, есть ещё какое-то неизвестное условие. Я начинал удалять с конца списка, отсортированного по возрасту комментариев (от младшего к старшему). Но мои самые старые комментарии имеют возраст не более 3-4 месяцев.

18 дек 2015 в 12:59
Тут пишут, что нужно около 50 удалить. Winter Bash 2015 Secret Hats
18 дек 2015 в 13:03

@NickVolynkin, не, я 50 не удалял. Может и сбился где-то со счёта, но на 20 промахнуться не мог. Скажем, не 30, а 35. У нас тут один в чате писал, что удалил 70 и ничего не получил.

18 дек 2015 в 13:04

Насчёт этой шляпы появилось подозрение, что дело не в 30 удалённых, а количестве голосов в удалённых комментариях. Среди тех, что я удалил, было много комментариев с голосами больше одного. Бывало и 3-4 тоже.

19 дек 2015 в 0:55

@NickVolynkin, удалил 30 комментов — получил шапку, список удаленных со статистикой можно посмотреть здесь

19 дек 2015 в 14:31
@Alex, забейте на это.
22 дек 2015 в 7:15

Hairboat’s Revenge

У этой лодочки есть история, связанная с какими-то интригами и взаимными подколами на Meta SE. Но я вам ее не расскажу, потому что сам не понял. Идея вот в чем:

Шляпа дается за любой комментарий под постом Jon Ericson (за всё, что создает нотификацию в его входящих сообщениях).

введите сюда описание изображения

Отслеживать
ответ дан 18 дек 2015 в 6:25
Nick Volynkin Мод Nick Volynkin
34k 8 8 золотых знаков 78 78 серебряных знаков 216 216 бронзовых знаков

оказыватеся под мета не дает. Сказано что meta.SFF.SE, meta.SE, не входит в это. meta.stackexchange.com/a/270851/311807

18 дек 2015 в 15:23
@Saidolim: да, верно.
18 дек 2015 в 17:00

Odinson

Сын Одина — Тор, атрибут Тора — Молот. Так что понятно, что нужно жахнуть.

Вы должны ударить «волшебным молотом» — то есть, «золотым» голосом за дубликат. Если у вас нету, вы должны хотя бы внести свой вклад в удар: проголосовать за закрытие перед тем, как золотой молот закроет вопрос окончательно.
(«Золотой голос за дубликат» по какой-нибудь метке вы получаете, если у вас есть золотой бедж по этой метке.)

Тор!

Отслеживать
ответ дан 18 дек 2015 в 10:34
207k 1 1 золотой знак 33 33 серебряных знака 73 73 бронзовых знака

Sun Wukong

Пост на Мете, на котором не менее чем 5 голосов за и 5 голосов против.

введите сюда описание изображения

Отслеживать
ответ дан 20 дек 2015 в 14:31
Nick Volynkin Мод Nick Volynkin
34k 8 8 золотых знаков 78 78 серебряных знаков 216 216 бронзовых знаков

Поощрение читерства? С трудом себе представляю настолько неоднозначное сообщение, за которое будут активно голосовать

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *