From d6e9357b9e3600b71255d41cd152a673323f9564 Mon Sep 17 00:00:00 2001 From: almightyhak <134626626+almightyhak@users.noreply.github.com> Date: Tue, 6 Aug 2024 00:38:53 +0700 Subject: [PATCH 1/8] Update build_push.yml Update build_push.yml From 304c0387b65a4e7b4ce27a1001d78d5b09dbebfd Mon Sep 17 00:00:00 2001 From: almightyhak <134626626+almightyhak@users.noreply.github.com> Date: Tue, 6 Aug 2024 01:20:06 +0700 Subject: [PATCH 2/8] Updated encryption and decryption keys --- .../tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt b/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt index c6cf9db4..aedb88c1 100644 --- a/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt +++ b/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt @@ -109,9 +109,12 @@ class VidsrcExtractor(private val client: OkHttpClient, private val headers: Hea } companion object { - private const val ENCRYPTION_KEY1 = "8Qy3mlM2kod80XIK" - private const val ENCRYPTION_KEY2 = "BgKVSrzpH2Enosgm" - private const val DECRYPTION_KEY = "9jXDYBZUcTcTZveM" + private const val ENCRYPTION_KEY1 = "bZSQ97kGOREZeGik" + private const val ENCRYPTION_KEY2 = "NeBk5CElH19ucfBU" + private const val ENCRYPTION_KEY3 = "Z7YMUOoLEjfNqPAt" + private const val DECRYPTION_KEY = "wnRQe3OZ1vMcD1ML" + private const val DECRYPTION_KEY1 = "eO74cTKZayUWH8x5" + } } } From 173699bd6340e69a38de9d6982b5393cdd0fb675 Mon Sep 17 00:00:00 2001 From: almightyhak Date: Tue, 6 Aug 2024 01:55:17 +0700 Subject: [PATCH 3/8] Update VidSrcExtractor.kt --- .../lib/vidsrcextractor/VidSrcExtractor.kt | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt b/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt index aedb88c1..07ab6c7d 100644 --- a/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt +++ b/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt @@ -56,7 +56,8 @@ class VidsrcExtractor(private val client: OkHttpClient, private val headers: Hea } val vidId = embedLink.substringAfterLast("/").substringBefore("?") val apiSlug = encodeID(vidId, ENCRYPTION_KEY1) - val h = encodeID(vidId, ENCRYPTION_KEY2) + val h1 = encodeID(vidId, ENCRYPTION_KEY2) + val h2 = encodeID(vidId, ENCRYPTION_KEY3) return buildString { append("https://") @@ -99,13 +100,17 @@ class VidsrcExtractor(private val client: OkHttpClient, private val headers: Hea } } - private fun vrfDecrypt(input: String): String { - var vrf = Base64.decode(input.toByteArray(), Base64.URL_SAFE) - val rc4Key = SecretKeySpec(DECRYPTION_KEY.toByteArray(), "RC4") - val cipher = Cipher.getInstance("RC4") - cipher.init(Cipher.DECRYPT_MODE, rc4Key, cipher.parameters) - vrf = cipher.doFinal(vrf) - return URLDecoder.decode(vrf.toString(Charsets.UTF_8), "utf-8") + private fun vrfDecrypt(input: String, useKey2: Boolean): String { + var vrf = Base64.decode(input.toByteArray(), Base64.URL_SAFE) + val rc4Key = if (useKey2) { + SecretKeySpec(DECRYPTION_KEY2.toByteArray(), "RC4") + } else { + SecretKeySpec(DECRYPTION_KEY.toByteArray(), "RC4") + } + val cipher = Cipher.getInstance("RC4") + cipher.init(Cipher.DECRYPT_MODE, rc4Key, cipher.parameters) + vrf = cipher.doFinal(vrf) + return URLDecoder.decode(vrf.toString(Charsets.UTF_8), "utf-8") } companion object { From 0ad51bcdfd140c3916927a7b2e7534177e06047d Mon Sep 17 00:00:00 2001 From: almightyhak <134626626+almightyhak@users.noreply.github.com> Date: Tue, 6 Aug 2024 02:01:25 +0700 Subject: [PATCH 4/8] Add files via upload --- .../lib/vidsrcextractor/VidSrcExtractor.kt | 30 +++++++------------ 1 file changed, 11 insertions(+), 19 deletions(-) diff --git a/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt b/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt index 07ab6c7d..c6cf9db4 100644 --- a/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt +++ b/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt @@ -56,8 +56,7 @@ class VidsrcExtractor(private val client: OkHttpClient, private val headers: Hea } val vidId = embedLink.substringAfterLast("/").substringBefore("?") val apiSlug = encodeID(vidId, ENCRYPTION_KEY1) - val h1 = encodeID(vidId, ENCRYPTION_KEY2) - val h2 = encodeID(vidId, ENCRYPTION_KEY3) + val h = encodeID(vidId, ENCRYPTION_KEY2) return buildString { append("https://") @@ -100,26 +99,19 @@ class VidsrcExtractor(private val client: OkHttpClient, private val headers: Hea } } - private fun vrfDecrypt(input: String, useKey2: Boolean): String { - var vrf = Base64.decode(input.toByteArray(), Base64.URL_SAFE) - val rc4Key = if (useKey2) { - SecretKeySpec(DECRYPTION_KEY2.toByteArray(), "RC4") - } else { - SecretKeySpec(DECRYPTION_KEY.toByteArray(), "RC4") - } - val cipher = Cipher.getInstance("RC4") - cipher.init(Cipher.DECRYPT_MODE, rc4Key, cipher.parameters) - vrf = cipher.doFinal(vrf) - return URLDecoder.decode(vrf.toString(Charsets.UTF_8), "utf-8") + private fun vrfDecrypt(input: String): String { + var vrf = Base64.decode(input.toByteArray(), Base64.URL_SAFE) + val rc4Key = SecretKeySpec(DECRYPTION_KEY.toByteArray(), "RC4") + val cipher = Cipher.getInstance("RC4") + cipher.init(Cipher.DECRYPT_MODE, rc4Key, cipher.parameters) + vrf = cipher.doFinal(vrf) + return URLDecoder.decode(vrf.toString(Charsets.UTF_8), "utf-8") } companion object { - private const val ENCRYPTION_KEY1 = "bZSQ97kGOREZeGik" - private const val ENCRYPTION_KEY2 = "NeBk5CElH19ucfBU" - private const val ENCRYPTION_KEY3 = "Z7YMUOoLEjfNqPAt" - private const val DECRYPTION_KEY = "wnRQe3OZ1vMcD1ML" - private const val DECRYPTION_KEY1 = "eO74cTKZayUWH8x5" - } + private const val ENCRYPTION_KEY1 = "8Qy3mlM2kod80XIK" + private const val ENCRYPTION_KEY2 = "BgKVSrzpH2Enosgm" + private const val DECRYPTION_KEY = "9jXDYBZUcTcTZveM" } } From 0213417973af5e33cd7578dd02621073ff1a4eb5 Mon Sep 17 00:00:00 2001 From: almightyhak Date: Tue, 6 Aug 2024 23:25:54 +0700 Subject: [PATCH 5/8] Update build_push.yml --- .github/workflows/build_push.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/.github/workflows/build_push.yml b/.github/workflows/build_push.yml index abcdb4d7..ecfccbf0 100644 --- a/.github/workflows/build_push.yml +++ b/.github/workflows/build_push.yml @@ -40,6 +40,20 @@ jobs: files_separator: " " safe_output: false + - name: Import GPG key + uses: crazy-max/ghaction-import-gpg@v6 # v6.1.0 + with: + gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} + passphrase: ${{ secrets.GPG_PASSPHRASE }} + git_user_signingkey: true + git_commit_gpgsign: true + + # This step is going to commit, but this will not trigger another workflow. + - name: Bump extensions that uses a modified lib + if: steps.modified-libs.outputs.any_changed == 'true' + run: | + ./.github/scripts/bump-versions.py ${{ steps.modified-libs.outputs.all_changed_files }} + # This step is going to commit, but this will not trigger another workflow. - name: Bump extensions that uses a modified lib if: steps.modified-libs.outputs.any_changed == 'true' From fe8400573d29161c4c6fcd7c264de5948a1da1d7 Mon Sep 17 00:00:00 2001 From: almightyhak <134626626+almightyhak@users.noreply.github.com> Date: Wed, 7 Aug 2024 01:08:12 +0700 Subject: [PATCH 6/8] Update VidSrcExtractor.kt --- .../eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt b/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt index c6cf9db4..0dc12921 100644 --- a/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt +++ b/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt @@ -138,3 +138,4 @@ data class MediaResponseBody( ) } } + From 35225e8cf0db602d72652b630f65bf6f588a15f9 Mon Sep 17 00:00:00 2001 From: almightyhak <134626626+almightyhak@users.noreply.github.com> Date: Wed, 7 Aug 2024 01:09:59 +0700 Subject: [PATCH 7/8] Update build_push.yml --- .github/workflows/build_push.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build_push.yml b/.github/workflows/build_push.yml index ecfccbf0..c98c3764 100644 --- a/.github/workflows/build_push.yml +++ b/.github/workflows/build_push.yml @@ -52,7 +52,7 @@ jobs: - name: Bump extensions that uses a modified lib if: steps.modified-libs.outputs.any_changed == 'true' run: | - ./.github/scripts/bump-versions.py ${{ steps.modified-libs.outputs.all_changed_files }} + chmod -x ./.github/scripts/bump-versions.py ${{ steps.modified-libs.outputs.all_changed_files }} # This step is going to commit, but this will not trigger another workflow. - name: Bump extensions that uses a modified lib From 8d00c1eb7c453763f8ebf1982d83ec970c407ca4 Mon Sep 17 00:00:00 2001 From: almightyhak <134626626+almightyhak@users.noreply.github.com> Date: Wed, 7 Aug 2024 01:14:20 +0700 Subject: [PATCH 8/8] Update VidSrcExtractor.kt --- .../eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt b/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt index 0dc12921..c6cf9db4 100644 --- a/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt +++ b/lib/vidsrc-extractor/src/main/java/eu/kanade/tachiyomi/lib/vidsrcextractor/VidSrcExtractor.kt @@ -138,4 +138,3 @@ data class MediaResponseBody( ) } } -