Pull to refresh
50
0
Валерий Квертовский @Qwertovsky

Full-Stack Software Engineer

Send message

Алгоритм по умолчанию: GOST3411-2012-256WITHECGOST3410-2012-256

Алгоритм есть в сертификате. Можно не делать настройку для этого. Возможен ли другой?

certificateForSign.getSignatureAlgorithm();
Лучше использовать усиленную неквалифицированную ЭП по соглашению сторон. УКЭП сейчас — это вендорлок от разработчиков средств и дополнительные требования, не влияющие на безопасность.
Начало — много воды, повторов. Текст эмоционален. Страхи и теории заговора. Как будто чью-то речь с разных встреч собрали и перепечатали.
Дальше есть конкретика и конкретные примеры. Из важного для меня:
— Правильно написано про «решение ИИ». Про цифровой и социальный профиль, который можно всесторонне анализировать и отдавать опять же ИИ.
— У владельца сервиса становится больше возможностей скрывать правки и ошибки. Коррупция для которой нужен только админ.
— Про надежность цифровых документов. Надо следить за бэкапами.
— Гражданам нужны дополнительные устройства и их обновление.
— Не отмечено, что на местах не знают как использовать и насколько доверять цифровым документам. Сейчас нотариусы и многие другие уверены, что если срок сертификата ЭП закончился, то все документы им подписанные становятся недействительными, и их надо снова заверять. Практика не наработана. Чтобы не ждать этой практики, надо тщательней прописывать в законе. Вплоть до инструкции, формата и алгоритма.
— В медицинских документах и картах всегда был бардак. Их государство и в бумажном виде собирало и хранило без спроса. И передавало без спроса в тот же военкомат и в школу. При этом нельзя их забрать. Можно только выписку попросить.
— В образовании всегда были эксперименты. Если выдают планшеты, а не требуют покупать, то не все так плохо.

Не нашел важные на мой взгляд моменты:
— Не сказано, что помимо покупки устройств граждан обязывают иметь номер мобильного телефона. Привязывают его везде как пароль. А номер за бездействие отбирается и передается неизвестно кому.
— Пугает злоупотребление простой цифровой подписью в виде кода по СМС. Опять же обязанность иметь и держать запароленным телефон. Не все телефоны можно запаролить. При этом подпись односторонняя. Владелец сервиса со своей стороны никакой подписи не дает. Доказать, что заявление было принято, и договор действует, может не получиться.
— Не сказано про то, что биометрию нельзя использовать как цифровую подпись. И пускать по ней к сервисам. Биометрия — это только доказательство, что конкретное тело есть. Но не доказывает, что гражданин, владеющий этим телом, принял добровольное решение воспользоваться услугой. Скоро получим ситуации, когда родственники парализованного будут отбирать имущество и набирать кредитов ещё до вступления в наследство.

Вторая часть расстроила. Вместо предложений и правок в закон — лозунги.

Использую https://docs.rs/log-mdc/0.1.0/log_mdc/ вместе с log4rs. Возможно это то, что вам нужно. Добавляю что-то в контекст


use log_mdc;

log_mdc::insert("userId", login);

В паттерне прописываю {X(userId)(anon)}. И любой вызов логгера пишет эту переменную или anon.

Брать плату за размещение приложения в магазине и за пользование сервиса оплаты апстора, за другие сервисы (пуши и т.д). Если пользователю удобнее оплатить через апстор, то будет зарабатывать дополнительно. Если пользователю не лень переходить по ссылкам, то не будет.
Если пользователь нашел приложение на сайте разработчика, оплатил там и мог скачать приложение там, то почему маркет вообще что-то должен получать в таком случае?
Quasar навязывает себя как единственное решение для всего приложения. Bootstrap, например, и Quasar оказались несовместимы. Я хотел взять у них только один компонент в свое приложение. Этот компонент на странице вообще не отобразился. Из-за стилей. Quasar использует беспрефиксные стили. Причем такие распространенные как row, column, wrap, content, flex, disabled. Мне пришлось бы убирать Bootstrap и переименовывать общие стили.
Также Quasar добавляется в проект не совсем стандартно, как другие библиотеки. И вообще рекомендует использовать свой CLI.
Ещё минус — это код компонент. Там везде render функция. Для сложных компонент (например календарь) это выглядит ужасно и отбивает желание разбираться и править под себя.
Предполагаю, что на написание статьи ушло больше времени, чем нужно было на генерацию конструкторов и сеттерев/геттеров в IDE.
Как правильно создать такой вход на своем сервере?
Обычно сайт запрашивает один из установленных в системе или браузере персональных сертификатов пользователя. Потом на сервере достаем сертификат из запроса и проверяем. Какую роль играет плагин?
Возможно ли доверять сертификату, который был выпущен одним из тысяч УЦ и может быть уже отозван минуту назад?

В последнем примере почему вы добавили
const { item } = this;
, а не оставили
this.item
?

Почему не написали свой сервис с нуля? Ожидал, что статья будет именно про это. Это быстрее и проще поддерживать, чем парсер чужого сайта.
Сворачивание веток в комментариях кто-нибудь делал?
А есть такая Cherry Red с классической раскладкой, но компактнее: без цифрового блока и без мультимедиа клавиш?

На форуме уже спрашивали про устаревшие ссылки: https://community.oracle.com/thread/4030451. Ответ: не везде обновили.
И в помнике лицензию добавили http://download.oracle.com/maven/com/sleepycat/je/7.4.5/je-7.4.5.pom
В низу страницы http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/learnmore/index.html лицензия новая.
На всё скаченное она должна распространяться.

Технически не мешало. Но в законе есть статья «4.4. Разрешение на обработку фискальных данных» и «4.5. Требования к соискателю разрешения на обработку фискальных данных». Я понимаю, что они относятся к ОФД. Но это выглядит так, будто ФД очень секретные и рассылать их всем подряд теперь нельзя.
Магазин может передавать данные не только к ОФД, но и в сторонний сервис, агрегирующий чеки с нескольких магазинов? Например, для отслеживания покупок, которые делает покупатель в другом магазине, но почему-то не делает у них. Технически, все кассы теперь имеют связь.
Это законно, при условии что покупатель сам привязывает карты лояльности с нескольких магазинов к своему аккаунту в сервисе?
Для Todo использую WorkFlowy. Текстовые заметки делать удобнее, чем в текущем Keep.
Ghostery вырезает не только рекламу. Иногда он убирает очень полезные блоки со страниц. А с этим плагином вы о них и не узнаете.
Проверяйте: как выглядит сайт с ним и без него.
Сомневаюсь, что рекурсия здесь нужна. Количество вариантов ограничено, и оно не большое.
Пример
if(content instanceof Multipart
				&& ((Multipart)content).getContentType().startsWith("multipart/mixed"))
{
	//get html part of message
	Object body = ((Multipart)content).getBodyPart(0).getContent();
	if(body instanceof Multipart
			&& ((Multipart)body).getContentType().startsWith("multipart/alternative"))
	{
		//get alternative text
		BodyPart altPart = ((Multipart)body).getBodyPart(0);
		
		//get main part (html or related)
		Object mainPart = ((Multipart)body).getBodyPart(1).getContent();
		if(mainPart instanceof Multipart)
		{
			/*
			 * -mixed
			 * \-alternative (body)
			 * 		\-text
			 * 		|-related (mainPart)
			 * 			\-html
			 * 			|-attachment
			 * |-attachments
			 */
			
			//html
			String html = (String)  ((Multipart)mainPart).getBodyPart(0).getContent();
			
			//related
			...
		}
		else
		{
			/*
			 * -mixed
			 * \-alternative (body)
			 * 		\-text
			 * 		|-html 
			 * |-attachments
			 */
			...
					
			//html
			String html = (String)  ((Multipart)body).getBodyPart(1).getContent();
			...
		}
		
		
	}
	else if(body instanceof Multipart
			&& ((Multipart)body).getContentType().startsWith("multipart/related"))
	{
		/*
		 * -mixed
		 * \-related (body)
		 * 		\-html
		 * 		|-attachment 
		 * |-attachments
		 */
		
		//html
		String html = (String) ((Multipart)body).getBodyPart(0).getContent();
		...
	}
	else
	{
		/*
		 * -mixed
		 * \-html (body)
		 * |-attachments
		 */
		
		//html
		String html = (String) ((Multipart)content).getBodyPart(0).getContent();
		...
	}
}
else 
{
	if(content instanceof Multipart
			&& ((Multipart)content).getContentType().startsWith("multipart/alternative"))
	{
		//get alternative text
		BodyPart altPart = ((Multipart)content).getBodyPart(0);
		
		
		//get html part of message
		Object body = ((Multipart)content).getBodyPart(1).getContent();
		if(body instanceof Multipart)
		{
			/*
			 * -alternative (content)
			 * \-text
			 * |-related (body)
			 * 		\-html
			 * 		|-attachment
			 */
			
			//html
			String html = (String) ((Multipart)body).getBodyPart(0).getContent();
			...
		}
		else
		{
			/*
			 * -alternative (content)
			 * \-text
			 * |-html
			 */
			
			...
			//html
			String html = (String) ((Multipart)content).getBodyPart(1).getContent();
			
		}
	}
	else if(content instanceof Multipart
			&& ((Multipart)content).getContentType().startsWith("multipart/related"))
	{
		/*
		 * -related (content)
		 * \-html
		 * |-attachment
		 */
		
		//html
		String html = (String) ((Multipart)content).getBodyPart(0).getContent();
		...
	}
	else 
	{
		/*
		 * -html (content)
		 */
		
		//html
		String html = (String) content;
		
	}
}
Тело сообщения может содержать несколько вложенных друг в друга частей multipart. Сначала mixed, в нем alternative, в нем related. У Вас только пара вариантов писем обрабатывается в примере.
1

Information

Rating
Does not participate
Location
Тверь, Тверская обл., Россия
Date of birth
Registered
Activity