Сам Сертификат Со знаком в Windows без makecert?

(Я просто понимаю, что это НЕ верно. Поэтому, пожалуйста, пропустите это решение :() Здесь есть 2 комментария.

  1. Представьте себе, если number = -2 и list = listOf(-1). Тогда [113 ] не может сказать нам, доступна ли эта пара в out list. Другое дело, что Kotlin предоставляет нулевую функцию безопасности. Мы можем вернуть ее как обнуляемый тип, в данном случае, Pair<Int, Int>?. Если наша функция возвращает нулевое значение, это означает, что что нет никакой возможной пары, которую мы ищем явно.
  2. Мое альтернативное решение приходит с концепцией функционального программирования.
fun findSumOfTwo(list: List<Int>, number: Int): Pair<Int, Int>? {
    return list
            .flatMap { it1 -> list.map { it2 -> Pair(it1, it2) } }
            .firstOrNull { it.first + it.second == number }
}

Не стесняйтесь обсуждать:) [1110 ]

8
задан Steve Wranovsky 9 October 2008 в 14:48
поделиться

3 ответа

[К сожалению, я не могу комментировать пока что-нибудь, так что я отправлю это в качестве ответа.]

Я вижу, что этот пост немного устарел, но я нахожусь в той же лодке, и я нашел это в файле redist.txt Visual Studio 2008:

Windows SDK Files

Subject to the license terms for the software, the following files may be distributed unmodified:

MageUI.exe
Mage.exe
Makecert.exe

Не уверен, что что-то изменилось (и если моя интерпретация верна), но похоже, что makecert.exe, включенный как часть Windows SDK, который, в свою очередь, включен как часть установки VS2008, действительно может быть распространен.

8
ответ дан 5 December 2019 в 07:37
поделиться

Woohoo! Время для pinvoke для Вас

crypt32 обеспечивает функцию CertCreateSelfSignCertificate; если это успешно выполняется, можно сохранить его в персональном хранилище пользователя (или хранилище машины, предполагающее, что Вы работаете поднятые),

2
ответ дан 5 December 2019 в 07:37
поделиться

Я не использовал OpenSSL, но я нахожусь в одной лодке и нашел эту статью полезной:

Обеспечение сервисов WCF с сертификатами

Автор обходит Вас посредством установки Microsoft Certificate Services, создавая CA, который может быть добавлен к доверенным центрам сертификации (на обоих клиентах и серверах, так как это сам подписано), затем генерируя сертификаты клиента и сервера, что цепочка из самоподписанного сертификата CA.

Вам не будут нужны клиентские сертификаты, но это действительно помогает Вам создать самоподписанный CA и сертификат сервера.

2
ответ дан 5 December 2019 в 07:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: