Java security signatureexception invalid file sign как исправить

My java program is packaged in a jar file and makes use of an external jar library, bouncy castle. My code compiles fine, but running the jar leads to the following error: Exception in thread "main"

Security is already a tough topic, but I’m disappointed to see the most popular solution is to delete the security signatures. JCE requires these signatures. Maven shade explodes the BouncyCastle jar file which puts the signatures into META-INF, but the BouncyCastle signatures aren’t valid for a new, uber-jar (only for the BC jar), and that’s what causes the Invalid signature error in this thread.

Yes, excluding or deleting the signatures as suggested by @ruhsuzbaykus does indeed make the original error go away, but it can also lead to new, cryptic errors:

java.security.NoSuchAlgorithmException: PBEWithSHA256And256BitAES-CBC-BC SecretKeyFactory not available

By explicitly specifying where to find the algorithm like this:

SecretKeyFactory.getInstance("PBEWithSHA256And256BitAES-CBC-BC","BC");

I was able to get a different error:

java.security.NoSuchProviderException: JCE cannot authenticate the provider BC

JCE can’t authenticate the provider because we’ve deleted the cryptographic signatures by following the suggestion elsewhere in this same thread.

The solution I found was the executable packer plugin that uses a jar-in-jar approach to preserve the BouncyCastle signature in a single, executable jar.

UPDATE:

Another way to do this (the correct way?) is to use Maven Jar signer. This allows you to keep using Maven shade without getting security errors. HOWEVER, you must have a code signing certificate (Oracle suggests searching for «Java Code Signing Certificate»). The POM config looks like this:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    <version>3.1.0</version>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>shade</goal>
            </goals>
            <configuration>
                <filters>
                    <filter>
                        <artifact>org.bouncycastle:*</artifact>
                        <excludes>
                            <exclude>META-INF/*.SF</exclude>
                            <exclude>META-INF/*.DSA</exclude>
                            <exclude>META-INF/*.RSA</exclude>
                        </excludes>
                    </filter>
                </filters>
                <transformers>
                    <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                        <mainClass>your.class.here</mainClass>
                    </transformer>
                </transformers>
                <shadedArtifactAttached>true</shadedArtifactAttached>
            </configuration>
        </execution>
    </executions>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jarsigner-plugin</artifactId>
    <version>1.4</version>
    <executions>
        <execution>
            <id>sign</id>
            <goals>
                <goal>sign</goal>
            </goals>
        </execution>
        <execution>
            <id>verify</id>
            <goals>
                <goal>verify</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <keystore>/path/to/myKeystore</keystore>
        <alias>myfirstkey</alias>
        <storepass>111111</storepass>
        <keypass>111111</keypass>
    </configuration>
</plugin>

No, there’s no way to get JCE to recognize a self-signed cert, so if you need to preserve the BouncyCastle certs, you have to either use the jar-in-jar plugin or get a JCE cert.

Security is already a tough topic, but I’m disappointed to see the most popular solution is to delete the security signatures. JCE requires these signatures. Maven shade explodes the BouncyCastle jar file which puts the signatures into META-INF, but the BouncyCastle signatures aren’t valid for a new, uber-jar (only for the BC jar), and that’s what causes the Invalid signature error in this thread.

Yes, excluding or deleting the signatures as suggested by @ruhsuzbaykus does indeed make the original error go away, but it can also lead to new, cryptic errors:

java.security.NoSuchAlgorithmException: PBEWithSHA256And256BitAES-CBC-BC SecretKeyFactory not available

By explicitly specifying where to find the algorithm like this:

SecretKeyFactory.getInstance("PBEWithSHA256And256BitAES-CBC-BC","BC");

I was able to get a different error:

java.security.NoSuchProviderException: JCE cannot authenticate the provider BC

JCE can’t authenticate the provider because we’ve deleted the cryptographic signatures by following the suggestion elsewhere in this same thread.

The solution I found was the executable packer plugin that uses a jar-in-jar approach to preserve the BouncyCastle signature in a single, executable jar.

UPDATE:

Another way to do this (the correct way?) is to use Maven Jar signer. This allows you to keep using Maven shade without getting security errors. HOWEVER, you must have a code signing certificate (Oracle suggests searching for «Java Code Signing Certificate»). The POM config looks like this:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    <version>3.1.0</version>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>shade</goal>
            </goals>
            <configuration>
                <filters>
                    <filter>
                        <artifact>org.bouncycastle:*</artifact>
                        <excludes>
                            <exclude>META-INF/*.SF</exclude>
                            <exclude>META-INF/*.DSA</exclude>
                            <exclude>META-INF/*.RSA</exclude>
                        </excludes>
                    </filter>
                </filters>
                <transformers>
                    <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                        <mainClass>your.class.here</mainClass>
                    </transformer>
                </transformers>
                <shadedArtifactAttached>true</shadedArtifactAttached>
            </configuration>
        </execution>
    </executions>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jarsigner-plugin</artifactId>
    <version>1.4</version>
    <executions>
        <execution>
            <id>sign</id>
            <goals>
                <goal>sign</goal>
            </goals>
        </execution>
        <execution>
            <id>verify</id>
            <goals>
                <goal>verify</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <keystore>/path/to/myKeystore</keystore>
        <alias>myfirstkey</alias>
        <storepass>111111</storepass>
        <keypass>111111</keypass>
    </configuration>
</plugin>

No, there’s no way to get JCE to recognize a self-signed cert, so if you need to preserve the BouncyCastle certs, you have to either use the jar-in-jar plugin or get a JCE cert.

На чтение 4 мин. Просмотров 46 Опубликовано 15.12.2019

Содержание

  1. Ошибка. Среда Java обнаружила компоненты приложений, которые могут указывать на наличие угроз безопасности.
  2. Поиск панели управления Java
  3. Параметры защиты от смешанного кода в панели управления Java

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

Этот раздел касается:

  • Платформы: Все платформы
  • Версии Java: 7.0, 8.0

ПРИЗНАКИ

При запуске апплета или приложения Java появляется диалоговое окно с предупреждением системы безопасности:

Заблокировать запуск потенциально небезопасных компонентов?

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

Подписанные приложения и апплеты Java Web Start, содержащие подписанные и неподписанные компоненты, могут быть потенциально небезопасными, если смешанный код не был намеренно использован поставщиком приложения. Начиная с выпуска Java SE 6 Update 19 при работе с программой, которая содержит подписанные и неподписанные компоненты, отображается диалоговое окно с предупреждением.

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

Способ обработки программ со смешанным кодом можно настроить с помощью панели управления Java.

Поиск панели управления Java

Параметры защиты от смешанного кода в панели управления Java

  1. В панели управления Java перейдите на вкладку Дополнительно.
  2. Разверните параметр Проверка безопасности смешанного кода (Из песочницы — Доверенный) в разделе Безопасность.

Доступны четыре уровня управления.

Включить – отображать предупреждение при необходимости

Это настройка по умолчанию. Когда возникает потенциальный риск для безопасности, отображается диалоговое окно. При нажатии кнопки Да выполнение потенциально небезопасных компонентов блокируется, после чего возможно завершение работы программы. Если нажата кнопка Нет, выполнение приложения или апплета продолжится с применением необходимых мер защиты (обнаруженные позднее пакеты или ресурсы с одинаковыми именами, но разными уровнями доверия, например, подписанные или неподписанные, не будут загружены).

Включить – скрыть предупреждение и выполнять с применением мер защиты

При выборе этого параметра диалоговое окно с предупреждением не отображается. Код выполняется так же, как и при нажатии кнопки Нет в диалоговом окне с предупреждением.

Включить – скрыть предупреждение и не выполнять недоверенный код

При выборе этого параметра диалоговое окно с предупреждением не отображается, а код выполняется так же, как и при нажатии кнопки Да в диалоговом окне с предупреждением.

Отключить проверку

Использовать этот параметр не рекомендуется. Этот параметр полностью отключает проверку смешанного доверенного и недоверенного кода, допуская выполнение потенциально небезопасного кода без применения мер защиты.

When verifying a signature using Signature.verify I receive an «Invalid encoding for signature» exception. When verifying same signature using Azure service, the signature is verified.

I have a hash-data (SHA-256), a public key, and a signature that I’m trying to verify. The signature was received using com.microsoft.azure.keyvault.KeyVaultClient.sign method, with signing algorithm «ES256».

This works (using ES256 algorithm) :

This fails (certificate holds same public key that is stored in Azure keyvault):

Expected result — true (signature is verified)

I get the following exception (I know it is not much to go by) and I would guess it may have to do with how JSch uses BASE64 encoding/decoding. Can someone confirm that the following openjdk behaviour does not affect this library?

From https://bugs.openjdk.java.net/browse/JDK-8174719
( Java8u121: signature.verify throws exception Invalid encoding for signature )

valeriep Valerie Peng added a comment — 2017-02-27 18:05 — edited
Thanks for the clarification.
Based on the provided info, I think the trailing 0s are introduced during the BASE64 encoding process.
The BASE64 decoding process didn’t correctly strip off these trailing 0s.
You should use the «=» pad char or keep track of how long the original byte[] is when doing your BASE64 encoding/decoding.
The byte[] passed into Signature.verify(byte[]) call needs to be exactly the bytes returned by Signature.sign(). It cannot contain any extra bytes. There is no problem with the current implementation. The earlier implementation in JDK 8u112 is incorrect and although we try our best to maintain backward compatibility, we have to fix this to ensure that signature verification is done properly.

This will be closed as «Not an Issue» or «Will Not Fix».

Содержание

  1. Ошибка при проверке подписи ECDSA в Java с помощью BouncyCastle
  2. Ошибка декодирования ECDSA: исключение в потоке «main» java.security.SignatureException: ошибка декодирования байтов подписи
  3. Ошибка при проверке подписи ECDSA в Java с помощью BouncyCastle
  4. JWT signature fails when using algorithms other than RSA #1210
  5. Comments
  6. steps to reproduce
  7. java security signatureexception invalid file sign
  8. Ошибка. Среда Java обнаружила компоненты приложений, которые могут указывать на наличие угроз безопасности.
  9. Поиск панели управления Java
  10. Параметры защиты от смешанного кода в панели управления Java

Ошибка при проверке подписи ECDSA в Java с помощью BouncyCastle

Я протестировал решение для проверки подписи ECDSA (Как я могу получить объект PublicKey из байтов открытого ключа EC?), который отлично работает с данными.

И это код (который печатает true):

Моя проблема возникает, когда я меняю подпись и данные на пример ввода из уже внедренной системы:

Новые данные выводят эту ошибку:

Я предполагаю, что проблема связана с сигнатурой, которая поставляется с защищенным сообщением, потому что:

  • Пара ключей имеет ту же длину и формат, что и в примере. И они верны, поскольку они исходят из сертификата, который подписывает сообщение.
  • Само сообщение (полезная нагрузка) не должно влиять на процесс безопасности.

Последнее, что стоит упомянуть, состоит в том, что в моей документации указано, что сигнатуре должно предшествовать поле под названием «R», которое «содержит координату x точки эллиптической кривой, возникающую в результате умножения элемента генератора на эфемерный закрытый ключ» и его длина должна быть такой же, как подпись (32 байт).

Может кто-то указать мне, что мне здесь не хватает?

EDIT: решение

Как указал Питер Деттман в своем ответе, signature не был правильно отформатирован (также содержимое было неверным) для вычисления методом verify() . Здесь — хорошее объяснение, в основном говорит, что:

При кодировании в DER эта (подпись) становится следующей последовательностью байтов:

0x30 b1 0x02 b2 (vr) 0x02 b3 (vs)

  • b1 — однобайтовое значение, равное длине в байтах оставшегося списка байтов (от первого 0x02 до конца кодирования);
  • b2 — однобайтовое значение, равное длине в байтах (vr);
  • b3 — однобайтовое значение, равное длине в байтах (vs);
  • (vr) — это подписанное кодирование большого числа знака «r» минимальной длины;
  • (vs) — это подписанная big-endian кодировка значения s с минимальной длиной.

Применяя это изменение, signature растет до 70 байт, а выполнение не выдает ошибки.

Источник

Ошибка декодирования ECDSA: исключение в потоке «main» java.security.SignatureException: ошибка декодирования байтов подписи

Я пытаюсь проверить подпись ECDSA, используя java, ключ был создан с помощью golang:

подпись происходит здесь: (сообщение было закодировано golang, используя этот метод):

здесь происходит декодирование:

однако, к сожалению, программа не работает по следующим причинам:

Это вызывает интересную дилемму, поскольку Открытый ключ:

Судя по этому сайту, кажется правильным:

Ключ был сгенерирован правильно, и ASN.1 Parse правильно его декодирует. Почему Java не нравится мой код?

Кроме того, прошу прощения за плохой отступ.

Bouncy Castle не жалуется на ваш открытый ключ, он жалуется на формат подписи, которую вы нам не показали. Пожалуйста, укажите байты подписи в шестнадцатеричном формате.

Также очень неудобно печатать по одному байту в строке; рассмотрим Arrays.toString(byte[]) или шестнадцатеричный javax.xml.bind.DatatypeConverter.printHexBinary(byte[]) . И никогда (никогда) не пытайтесь преобразовать произвольные двоичные файлы, такие как криптографические подписи и другие криптообъекты, в Java String напрямую; это отличный способ уничтожить ваши данные. И, наконец, использование ECDSA (P384) с SHA1 фактически отбрасывает большую часть вашей безопасности, но оставьте это для другого стека после того, как ваш код заработает.

Java JCE определенно не ожидает подписи в формате JSON . поэтому json_response.getBytes(«UTF-8») заставляет меня нервничать в вашем вызове обновления.

@ lockcmpxchg8b + Формат JWS для подписи ECDSA — (base64url of) big-endian unsigned r, s фиксированной длины без метаданных, таких как теги, который является форматом, используемым PKCS11 и IINM P1363, и поддерживается Bouncy (но не SunEC) хотя по умолчанию не используется. Но JWA требует, чтобы хэш соответствовал кривой, поэтому ECDSA (P-384) требует SHA-384.

Я голосую за то, чтобы закрыть этот вопрос как не по теме, потому что без подписи на этот вопрос нельзя ответить.

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

Источник

Ошибка при проверке подписи ECDSA в Java с помощью BouncyCastle

Я протестировал решение для проверки подписи ECDSA (Как я могу получить объект PublicKey из байтов открытого ключа EC?), который идеально работает с заданными данными.

И это код (который выводит true):

Моя проблема возникает, когда я меняю подпись и данные на пример ввода из уже реализованной системы:

Новые данные выводят эту ошибку:

Я предполагаю, что проблема связана с подписью в защищенном сообщении, потому что:

  • Пара ключей имеет ту же длину и формат, что и в примере. И верны, поскольку исходит из сертификата, которым подписано сообщение.
  • Само сообщение (полезная нагрузка) не должно влиять на процесс безопасности.

Последнее, что стоит упомянуть, это то, что в моей документации говорится, что подписи должно предшествовать поле с именем «R», которое «содержит координату x точки эллиптической кривой, полученной в результате умножения элемента генератора на эфемерный закрытый ключ» и его длина должна быть такой же, как у подписи (32 байта).

Может кто-нибудь указать мне, что мне здесь не хватает?

РЕДАКТИРОВАТЬ: решение

Как указал Питер Деттман в своем ответе, signature был неправильно отформатирован (также было неверно содержимое), чтобы его можно было вычислить методом verify() . Вот хороший объяснение, которое в основном говорит, что:

При кодировании в DER эта (подпись) становится следующей последовательностью байтов:

0x30 b1 0x02 b2 (vr) 0x02 b3 (vs)

  • b1 — однобайтовое значение, равное длине в байтах оставшегося списка байтов (от первого 0x02 до конца кодирования);
  • b2 — однобайтовое значение, равное длине (vr) в байтах;
  • b3 — однобайтовое значение, равное длине в байтах (vs);
  • (vr) — знаковое прямое кодирование значения «r» минимальной длины;
  • (vs) — это знаковое прямое кодирование значения «s» минимальной длины.

Применяя это изменение, signature увеличивается до 70 байт, и выполнение не выдает ошибок.

Источник

JWT signature fails when using algorithms other than RSA #1210

I encountered a problem in JWT signature verification with OxAuthCryptoProvider. It seems it only succeeds when the algorithm is RSA based, not with HS and EC algos

I was able to reproduce in 3.1.x and 4.0. The following is an example based on SCIM RP keys but passport RP can also be used.

steps to reproduce

Pick a key from scim-rp.jks, eg. b290d965-5fc9-409b-8c77-bb04982d0944_sig_es256 and export the private key (download my keystore here):

# /opt/jre/bin/java -cp ‘/home/jetty/lib/*’ org.gluu.oxauth.util.KeyExporter -keystore scim-rp.jks -keypasswd secret -alias b290d965-5fc9-409b-8c77-bb04982d0944_sig_es256 -exportfile scim-private-key.pem

Generate a JWT and sign with the private key (use this javascript file or python file as guide). I used both to test.

Verify the signature of the token. I used jython for agility (paste the token obtained in the RHS of jwt variable below):

The call to check returns False and oxauth.log shows:

If I change, say, to key 4c0ef252-909f-4674-92da-ea8168c9767c_sig_rs256 , export private key, and change algorithm in scripts, the validation passes.

The text was updated successfully, but these errors were encountered:

It’s bug, for EC algorithm signature is not transcoded and therefore verification fails. Both jwt.io and nimbus confirmed it.

Fixed it with ada654d . Not closing it yet, we must carefully cover it with tests.

I’ve fixed oxauth cryptoProvider and oxauth ecdsaSigner. At least now JWT created by third-party lib is verified successfully by jwt.io, nimbus, oxauth cryptoProvider and oxauth ecdsaSigner.

However after full re-build and tests re-run we got 58 test failures. (Which can be seen here: https://ox.gluu.org/jenkins/job/oxAuth_4.1_LDAP/259/)

That makes me think that we have bug in JWT generation for EC algorithms as well. To check it I performed following:

  1. take static JWT -> validate by nimbus, oxauth cryptoProvider and oxauth ecdsaSigner
  2. generate JWT by nimbus -> validate by nimbus, oxauth cryptoProvider and oxauth ecdsaSigner
  3. generate JWT by oxauth -> validate by nimbus, oxauth cryptoProvider and oxauth ecdsaSigner

It gives full picture of compatibility and whether generator and verifier works correctly.

It means that we spot another bug. Now during signing with EC algorithms (and this is the reason of 58 test failures).

Источник

java security signatureexception invalid file sign

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

Этот раздел касается:

При запуске апплета или приложения Java появляется диалоговое окно с предупреждением системы безопасности:

Заблокировать запуск потенциально небезопасных компонентов?

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

Подписанные приложения и апплеты Java Web Start, содержащие подписанные и неподписанные компоненты, могут быть потенциально небезопасными, если смешанный код не был намеренно использован поставщиком приложения. Начиная с выпуска Java SE 6 Update 19 при работе с программой, которая содержит подписанные и неподписанные компоненты, отображается диалоговое окно с предупреждением.

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

Способ обработки программ со смешанным кодом можно настроить с помощью панели управления Java.

Поиск панели управления Java

Параметры защиты от смешанного кода в панели управления Java

  1. В панели управления Java перейдите на вкладку Дополнительно.
  2. Разверните параметр Проверка безопасности смешанного кода (Из песочницы — Доверенный) в разделе Безопасность.

Доступны четыре уровня управления.

Включить – отображать предупреждение при необходимости

Это настройка по умолчанию. Когда возникает потенциальный риск для безопасности, отображается диалоговое окно. При нажатии кнопки Да выполнение потенциально небезопасных компонентов блокируется, после чего возможно завершение работы программы. Если нажата кнопка Нет, выполнение приложения или апплета продолжится с применением необходимых мер защиты (обнаруженные позднее пакеты или ресурсы с одинаковыми именами, но разными уровнями доверия, например, подписанные или неподписанные, не будут загружены).

Включить – скрыть предупреждение и выполнять с применением мер защиты

При выборе этого параметра диалоговое окно с предупреждением не отображается. Код выполняется так же, как и при нажатии кнопки Нет в диалоговом окне с предупреждением.

Включить – скрыть предупреждение и не выполнять недоверенный код

При выборе этого параметра диалоговое окно с предупреждением не отображается, а код выполняется так же, как и при нажатии кнопки Да в диалоговом окне с предупреждением.

Отключить проверку

Использовать этот параметр не рекомендуется. Этот параметр полностью отключает проверку смешанного доверенного и недоверенного кода, допуская выполнение потенциально небезопасного кода без применения мер защиты.

When verifying a signature using Signature.verify I receive an «Invalid encoding for signature» exception. When verifying same signature using Azure service, the signature is verified.

I have a hash-data (SHA-256), a public key, and a signature that I’m trying to verify. The signature was received using com.microsoft.azure.keyvault.KeyVaultClient.sign method, with signing algorithm «ES256».

This works (using ES256 algorithm) :

This fails (certificate holds same public key that is stored in Azure keyvault):

Expected result — true (signature is verified)

I get the following exception (I know it is not much to go by) and I would guess it may have to do with how JSch uses BASE64 encoding/decoding. Can someone confirm that the following openjdk behaviour does not affect this library?

From https://bugs.openjdk.java.net/browse/JDK-8174719
( Java8u121: signature.verify throws exception Invalid encoding for signature )

valeriep Valerie Peng added a comment — 2017-02-27 18:05 — edited
Thanks for the clarification.
Based on the provided info, I think the trailing 0s are introduced during the BASE64 encoding process.
The BASE64 decoding process didn’t correctly strip off these trailing 0s.
You should use the «=» pad char or keep track of how long the original byte[] is when doing your BASE64 encoding/decoding.
The byte[] passed into Signature.verify(byte[]) call needs to be exactly the bytes returned by Signature.sign(). It cannot contain any extra bytes. There is no problem with the current implementation. The earlier implementation in JDK 8u112 is incorrect and although we try our best to maintain backward compatibility, we have to fix this to ensure that signature verification is done properly.

This will be closed as «Not an Issue» or «Will Not Fix».

Источник


  1. Lex777

    Lex777
    Активный участник
    Пользователь

    Всем привет.

    Столкнулся с такой проблемой — Некоторые игроки, когда авторизовались в лаунчере и скачивают сначала java, затем assets, либы и сам клиент..во время скачивания могут рандомно (но больше 60% случаев) словить ошибку скачивания файлов. Данная ошибка в логе ЛаунчСервера трактуется вот так:

    2017.11.14 19:32:33 [ERROR] java.net.SocketException: Broken pipe (Write failed)
        at java.net.SocketOutputStream.socketWrite0(Native Method)
        at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:111)
        at java.net.SocketOutputStream.write(SocketOutputStream.java:155)
        at java.util.zip.DeflaterOutputStream.deflate(DeflaterOutputStream.java:253)
        at java.util.zip.DeflaterOutputStream.write(DeflaterOutputStream.java:211)
        at launcher.helper.IOHelper.transfer(IOHelper.java:557)
        at launchserver.response.update.UpdateResponse.reply(UpdateResponse.java:97)
        at launchserver.response.ResponseThread.respond(ResponseThread.java:163)
        at launchserver.response.ResponseThread.run(ResponseThread.java:61)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)

    Я купил платную поддержку у автора, автор лаунчера мне отвечает что у меня проблема с сетью.

    Однако я и еще несколько моих друзей (около 10 человек) качают без ошибок.
    С чем это связанно понять не могу.
    Если кто-то еще вдруг сталкивался с данной проблемой, отзовитесь.

  2. Быстрая раскрутка сервера Minecraft


  3. Lex777

    Lex777
    Активный участник
    Пользователь

    Нууу, далеко не на все. Есть опыт с этим.

  4. Из-за чего происходит «Обрыв канала (Write failed)»? Помогите, если кто сталкивался с этим

  5. Поможете?Ошибка вот такая
    java.security.signatureexception invalid file sign:


  6. TheNikitaDJ

    TheNikitaDJ
    Активный участник

    Баллы:
    61
    Имя в Minecraft:
    TheNikitaDJ123

    У меня проблемы…

    upload_2017-11-19_22-38-34.png

    Обновление от 22:46 этого же дня:

    # Compress files when updating using Inflate algorithm
    compress: true;

    Вот это нужно было! THX!

    Последнее редактирование: 19 ноя 2017

  7. viktor141

    viktor141
    Активный участник

    Баллы:
    61
    Имя в Minecraft:
    vixtor

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


  8. viktor141

    viktor141
    Активный участник

    Баллы:
    61
    Имя в Minecraft:
    vixtor

    2017.11.26 15:15:07 [INFO] HikariCP pooling enabled for ‘authHandlerPool’
    [main] WARN com.zaxxer.hikari.HikariDataSource — idleTimeout is greater than maxLifetime, setting to maxLifetime.
    [main] INFO com.zaxxer.hikari.HikariDataSource — Hikari pool authHandlerPool is starting.
    вот такая вещь при запуске сашка, auth hendler подключен к бд, он работает в штатном решиме ну то есть сашок, но меня пугает данная надпись при загрузке


  9. Alta-Host

    Alta-Host
    Активный участник
    Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Big_Energy

    У кого есть сборка под губку?


  10. tacos912

    tacos912
    Активный участник
    Пользователь

    Баллы:
    78
    Имя в Minecraft:
    tacos912


  11. tacos912

    tacos912
    Активный участник
    Пользователь

    Баллы:
    78
    Имя в Minecraft:
    tacos912


  12. tacos912

    tacos912
    Активный участник
    Пользователь

    Баллы:
    78
    Имя в Minecraft:
    tacos912

    Лаунчсервер сорвал соединение, антивирус/брандмауэр заблокировали его.


  13. Alta-Host

    Alta-Host
    Активный участник
    Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Big_Energy

    Есть minecraft_server.jar с вырезанной авторизацией под 1.11 или 1.12.x ?
    Можешь поделиться или сказать как вырезать?


  14. _KoteMyrok_

    _KoteMyrok_
    Активный участник
    Пользователь

    Баллы:
    76
    Имя в Minecraft:
    KoteMyrok

    Скачай сервер с пропатчинным ядром на сайте сашка(внизу) и просто закинь jar файл лаунчера в корень сервера


  15. forl1nk

    forl1nk
    Активный участник

    Баллы:
    61
    Имя в Minecraft:
    forl1nk

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


  16. SergK35

    SergK35
    Активный участник
    Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Sergk35

    Из-за чего на этот лаунчер антивирусы ругаются сильнее, чем на слитый к773?


  17. Dereku

    Dereku
    Старожил
    Пользователь

    Баллы:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku

    Потому что антивирусы не нужны.

  18. Чтоб вы нубы его не ставили.

  19. Есть у кого Sponge1.12 пропатченный? Не поделитесь?)


  20. FoxLive

    FoxLive
    Активный участник
    Пользователь

    Не отображает скин в игре хотя скин и плащ хавает лаунчерсервер

    2017.12.04 22:36:32 [INFO] Command ‘debug true’
    2017.12.04 22:36:32 [INFO] Debug enabled: true
    2017.12.04 22:37:05 [DEBUG] Connection #54 from 178.168.***.**
    2017.12.04 22:37:05 [DEBUG] #54 Type: LAUNCHER
    2017.12.04 22:37:05 [DEBUG] #54 Replied
    2017.12.04 22:37:09 [DEBUG] Connection #55 from 178.168.***.**
    2017.12.04 22:37:09 [DEBUG] #55 Type: AUTH
    2017.12.04 22:37:09 [DEBUG] #55 Login: ‘Tester’, Password: ‘********************’
    2017.12.04 22:37:09 [DEBUG] #55 Auth: ‘Tester’ -> ‘Tester’
    2017.12.04 22:37:09 [DEBUG] Getting texture: ‘http://***/upload/skins/Tester.png’
    2017.12.04 22:37:09 [DEBUG] Getting texture: ‘http://***/upload/cloaks/Tester.png’
    2017.12.04 22:37:09 [DEBUG] #55 Replied
    2017.12.04 22:37:10 [DEBUG] Connection #56 from 178.168.***.**
    2017.12.04 22:37:10 [DEBUG] #56 Type: UPDATE
    2017.12.04 22:37:11 [DEBUG] #56 Update dir: ‘jre-8u131-win64’
    2017.12.04 22:37:11 [DEBUG] #56 Replied
    2017.12.04 22:37:11 [DEBUG] Connection #57 from 178.168.***.**
    2017.12.04 22:37:11 [DEBUG] #57 Type: UPDATE
    2017.12.04 22:37:11 [DEBUG] #57 Update dir: ‘asset1.7.10’
    2017.12.04 22:37:12 [DEBUG] #57 Replied
    2017.12.04 22:37:12 [DEBUG] Connection #58 from 178.168.***.**
    2017.12.04 22:37:12 [DEBUG] #58 Type: UPDATE
    2017.12.04 22:37:12 [DEBUG] #58 Update dir: ‘Magic’
    2017.12.04 22:37:12 [DEBUG] #58 Replied

    Исправлено

    Последнее редактирование: 6 дек 2017

  21. FullCrafter

    FullCrafter
    Активный участник
    Пользователь

    Баллы:
    61
    Имя в Minecraft:
    FullCrafter

    скачал ассеты и клиент но почему то клиент не запускается

Поделиться этой страницей

Русское сообщество Bukkit

Bukkit по-русски - свой сервер Minecraft

Comments

@lukeis

Originally reported on Google Code with ID 5264

We are using the jars 

        <dependency org="org.seleniumhq.selenium" name="selenium-server" rev="2.30.0">
            <exclude module="org.mortbay.jetty" /> 
                        <exclude module="selenium-chrome-driver" />
            <exclude module="selenium-firefox-driver" />
            <exclude module="selenium-ie-driver" />
            <exclude module="selenium-android-driver" />
            <exclude module="selenium-safari-driver" />
            <exclude module="selenium-iphone-driver" /> 
        </dependency>
        <dependency org="org.seleniumhq.selenium" name="selenium-java" rev="2.30.0">
            <exclude module="commons-exec" /> 
            <exclude module="selenium-chrome-driver" />
            <exclude module="selenium-firefox-driver" />
            <exclude module="selenium-ie-driver" />
            <exclude module="selenium-android-driver" />
            <exclude module="selenium-safari-driver" />
            <exclude module="selenium-iphone-driver" /> 
        </dependency>
        <dependency org="org.seleniumhq.selenium" name="selenium-htmlunit-driver" rev="2.29.1"/>
        <dependency org="org.seleniumhq.selenium" name="selenium-remote-driver" rev="2.29.1"/>

and put them together in our own big jar.

The problem is whenever we want to run something,
we got java.lang.SecurityException: Invalid signature file digest for Manifest main
attributes.

I've tried to sign the jar, check there is no RSA, SF,etc in the jar,etc.
Out of ideas, please help!

Reported by emmanuel.joliet on 2013-03-01 17:34:17

@lukeis

why are you mismatching the selenium components? you're asking for failure...

this is a completely unsupported configuration, i'm going to close as won't fix as
this wonders off into the realm of personal (hacking) customization.

The recommended dependency inclusion is to merely specify:

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-server</artifactId>
        <version>2.31.0</version>
    </dependency> 

Reported by luke.semerau on 2013-03-01 20:30:08

  • Status changed: WontFix

@lukeis

Won't fix? Hacking? 
This was the nth attempt (desperate btw) trying to solve the problem. 
The fact is that if i take you recommendation i got the same error.
Quid?

Reported by emmanuel.joliet on 2013-03-02 09:41:55

@lukeis

You'll need to explain in more detail then what you are doing and what you are trying
to accomplish. You have provided almost no information, it looks like you're using
the maven build artifacts, but using what? Ivy? Gradle? Something else?
What causes your error? Building? Executing a test? Is there more of a stack trace?

Reported by luke.semerau on 2013-03-02 11:11:43

  • Status changed: NeedsClarification

@lukeis

Please also provide detailed steps to reproduce the issue

Reported by luke.semerau on 2013-03-02 11:17:26

@lukeis

ok, i have packed other jars with selenium jars (resolved with Ivy through nexus!) using
Ant (standard <jar> task!).

 <jar jarfile="${dist}/${fileName}" update="true" duplicate="preserve">
                        <zipgroupfileset dir="${lib}">
                                <include name="compile/*-*.jar" />
                                <!--include name="runtime/*-*.jar" / -->
                        </zipgroupfileset>

                </jar>

Then when i execute a program such as running:

java -cp MyJarsContainingSeleniumJars z.y.x.MyApp

then i've got only that:

/software/jdk1.7.0_04/bin/java -Xmx14g -XX:MaxPermSize=512M -cp conf:/home/agistest/AGIS/dist/AGIS-11.0.0.jar
-Dlog4j.configuration=file:conf/logging.properties -Dhostid=2 -DrunDesc=NIGHTLY_T3_CG_28-02-2013-20:09:38_1
x.y.z.Launcher args
Exception in thread "main" java.lang.SecurityException: Invalid signature file digest
for Manifest main attributes
       at sun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:240)
       at sun.security.util.SignatureFileVerifier.process(SignatureFileVerifier.java:193)
       at java.util.jar.JarVerifier.processEntry(JarVerifier.java:262)
       at java.util.jar.JarVerifier.update(JarVerifier.java:216)
       at java.util.jar.JarFile.initializeVerifier(JarFile.java:341)
       at java.util.jar.JarFile.getInputStream(JarFile.java:406)
       at sun.misc.JarIndex.getJarIndex(JarIndex.java:137)
       at sun.misc.URLClassPath$JarLoader$1.run(URLClassPath.java:668)
       at sun.misc.URLClassPath$JarLoader$1.run(URLClassPath.java:660)
       at java.security.AccessController.doPrivileged(Native Method)
       at sun.misc.URLClassPath$JarLoader.ensureOpen(URLClassPath.java:659)
       at sun.misc.URLClassPath$JarLoader.<init>(URLClassPath.java:632)
       at sun.misc.URLClassPath$3.run(URLClassPath.java:362)
       at sun.misc.URLClassPath$3.run(URLClassPath.java:352)
       at java.security.AccessController.doPrivileged(Native Method)
       at sun.misc.URLClassPath.getLoader(URLClassPath.java:351)
       at sun.misc.URLClassPath.getLoader(URLClassPath.java:328)
       at sun.misc.URLClassPath.getResource(URLClassPath.java:194)
       at java.net.URLClassLoader$1.run(URLClassLoader.java:358)
       at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
       at java.security.AccessController.doPrivileged(Native Method)
       at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
       at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
       at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
       at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
       at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:480) 

The question is, is there any SF, RSA or any other type of file signed in the Selenium
dist that could cause that???

Thanks for support!

Reported by emmanuel.joliet on 2013-03-02 13:28:38

@lukeis

Selenium does not include any of those files, possibly one of it's dependencies do.
Either way I think they would be easily viewable in your jar (can you double check
the contents or your jar? or please email me your jar so that I can take a look at
it)

Since to reproduce this requires an ivy file and an ant build.xml of some kind, I'm
not able to easily reproduce this issue. If you can recreate the issue with complete
reproducible steps (sample ivy and build file and possibly java too). Or I could try
to see what is going on with your jar. But likely there is something happening with
one of the many dependencies either in your project or the selenium project that causes
this if you are re-packing the jars. This may help you, but i'm not sure: http://stackoverflow.com/a/9594412/725944

Reported by luke.semerau on 2013-03-04 07:48:20

@lukeis

Ok, found the problem. One of the library from selenium-server pom is bouncycastle.org
which include /META-INF/BCKEY.DSA file.

Excluding this packages in ivy.xml fix my problem for now.

            <exclude module="bcpkix-jdk15on" />
            <exclude module="bcprov-jdk15on" />

Thanks.
E.

Reported by emmanuel.joliet on 2013-03-04 10:21:45

@lukeis

Glad you found your problem. 

Reported by luke.semerau on 2013-03-04 13:47:07

  • Status changed: WorkingAsIntended

@lukeis

Reported by luke.semerau on 2015-09-17 18:16:55

  • Labels added: Restrict-AddIssueComment-Commit

@SeleniumHQ
SeleniumHQ

locked and limited conversation to collaborators

Mar 4, 2016

1 participant

@lukeis

Понравилась статья? Поделить с друзьями:
  • Java runtime error что это
  • Java runtime environment not found как исправить
  • Java runtime environment error log
  • Java rmi error unmarshalling arguments
  • Java retry on error