10.4 KB
/home/fdroid/fdroiddata/tmp/org.billthefarmer.gurgle_112.apk vs.
/home/fdroid/fdroiddata/tmp/sigcp_org.billthefarmer.gurgle_112.apk
1.94 KB
/usr/lib/android-sdk/build-tools/debian/apksigner verify --verbose --print-certs {}
error from `/usr/lib/android-sdk/build-tools/debian/apksigner verify --verbose --print-certs {}` (b): DOES NOT VERIFY ERROR: APK Signature Scheme v3 signer #1: APK integrity check failed. CHUNKED_SHA256 digest mismatch. Expected: <59e4efb7657589869fc8602086fa64ed079c1cadd760dbe13fc59581041c6f8f>, actual: <b3ad14cf1b7e2ef41f0581549090fc17d81661b4e7ff320cfc3f2cac699a45f1> ERROR: APK Signature Scheme v3 signer #1: APK integrity check failed. VERITY_CHUNKED_SHA256 digest mismatch. Expected: <ede46669375db70cecb4ca68c60db7a7a611a0090c555ea3049c80260d37abe28340080000000000>, actual: <9ffe1fa74af154c9e6b17523eb1c4c61e8d569758686552785744d498c55c7c48340080000000000>
    
Offset 1, 17 lines modifiedOffset 0, 0 lines modified
1 Verifies 
2 Verified·using·v1·scheme·(JAR·signing):·true 
3 Verified·using·v2·scheme·(APK·Signature·Scheme·v2):·true 
4 Verified·using·v3·scheme·(APK·Signature·Scheme·v3):·true 
5 Verified·using·v4·scheme·(APK·Signature·Scheme·v4):·false 
6 Verified·for·SourceStamp:·false 
7 Number·of·signers:·1 
8 Signer·#1·certificate·DN:·CN=FDroid,·OU=FDroid,·O=fdroid.org,·L=ORG,·ST=ORG,·C=UK 
9 Signer·#1·certificate·SHA-256·digest:·ce0376edfab05ab81e028006df9154b7ce3af46dda77140feb7489e1cacd769d 
10 Signer·#1·certificate·SHA-1·digest:·e73e7b16d5381ca1288d100b7c9dc9aa2f859114 
11 Signer·#1·certificate·MD5·digest:·2e95082be0957626aca573da9d8ea330 
12 Signer·#1·key·algorithm:·RSA 
13 Signer·#1·key·size·(bits):·2048 
14 Signer·#1·public·key·SHA-256·digest:·408add9a44e97535a19e01b416a013c8e2ffa5852e94842e7623185509c95132 
15 Signer·#1·public·key·SHA-1·digest:·4e4a8ab8117697a7e46568f8633d19cb36990324 
16 Signer·#1·public·key·MD5·digest:·26ade0f9ae4d3e4e632cd301075308aa 
17 WARNING:·META-INF/com/android/build/gradle/app-metadata.properties·not·protected·by·signature.·Unauthorized·modifications·to·this·JAR·entry·will·not·be·detected.·Delete·or·move·the·entry·outside·of·META-INF/. 
670 B
zipinfo {}
    
Offset 66, 8 lines modifiedOffset 66, 8 lines modified
66 -rw----·····0.0·fat·····3059·b-·stor·81-Jan-01·01:01·res/xM.png66 -rw----·····0.0·fat·····3059·b-·stor·81-Jan-01·01:01·res/xM.png
67 -rw----·····0.0·fat······308·b-·stor·81-Jan-01·01:01·res/xb.png67 -rw----·····0.0·fat······308·b-·stor·81-Jan-01·01:01·res/xb.png
68 -rw----·····0.0·fat······933·b-·stor·81-Jan-01·01:01·res/xi.png68 -rw----·····0.0·fat······933·b-·stor·81-Jan-01·01:01·res/xi.png
69 -rw----·····0.0·fat····15032·b-·stor·81-Jan-01·01:01·resources.arsc69 -rw----·····0.0·fat····15032·b-·stor·81-Jan-01·01:01·resources.arsc
70 -rw----·····2.0·fat·····5926·b-·defN·81-Jan-01·01:01·META-INF/D6DE58C1.SF70 -rw----·····2.0·fat·····5926·b-·defN·81-Jan-01·01:01·META-INF/D6DE58C1.SF
71 -rw----·····2.0·fat·····1334·b-·defN·81-Jan-01·01:01·META-INF/D6DE58C1.RSA71 -rw----·····2.0·fat·····1334·b-·defN·81-Jan-01·01:01·META-INF/D6DE58C1.RSA
72 -rw----·····2.0·fat·····5799·b-·defN·81-Jan-01·01:01·META-INF/MANIFEST.MF72 -rw----·····2.0·fat·····5799·b-·defN·81-Jan-01·01:01·META-INF/MANIFEST.MF
73 71·files,·1133305·bytes·uncompressed,·530921·bytes·compressed:··53.2%73 71·files,·1133305·bytes·uncompressed,·530919·bytes·compressed:··53.2%
6.63 KB
classes.dex
3.07 KB
dexdump -a -d -f -h {}
Ignoring differences in offsets to keep diff size reasonable.
    
Offset 1, 12 lines modifiedOffset 1, 12 lines modified
1 DEX·version·'035'1 DEX·version·'035'
2 DEX·file·header:2 DEX·file·header:
3 magic···············:·'dex\n035\0'3 magic···············:·'dex\n035\0'
4 checksum············:·a9a057c64 checksum············:·55f359be
5 signature···········:·c75b...84705 signature···········:·31de...6b94
6 file_size···········:·4589126 file_size···········:·458912
7 header_size·········:·1127 header_size·········:·112
8 link_size···········:·08 link_size···········:·0
9 link_off············:·0·(0x000000)9 link_off············:·0·(0x000000)
10 string_ids_size·····:·394310 string_ids_size·····:·3943
11 string_ids_off······:·112·(0x000070)11 string_ids_off······:·112·(0x000070)
12 type_ids_size·······:·51712 type_ids_size·······:·517
Offset 58924, 15 lines modifiedOffset 58924, 15 lines modified
58924 ······type··········:·'Ljava/lang/String;'58924 ······type··········:·'Ljava/lang/String;'
58925 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)58925 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)
58926 ······value·········:·"release"58926 ······value·········:·"release"
58927 ····#2··············:·(in·Lorg/billthefarmer/gurgle/BuildConfig;)58927 ····#2··············:·(in·Lorg/billthefarmer/gurgle/BuildConfig;)
58928 ······name··········:·'BUILT'58928 ······name··········:·'BUILT'
58929 ······type··········:·'J'58929 ······type··········:·'J'
58930 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)58930 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)
58931 ······value·········:·165930945073758931 ······value·········:·1660088044608
58932 ····#3··············:·(in·Lorg/billthefarmer/gurgle/BuildConfig;)58932 ····#3··············:·(in·Lorg/billthefarmer/gurgle/BuildConfig;)
58933 ······name··········:·'DEBUG'58933 ······name··········:·'DEBUG'
58934 ······type··········:·'Z'58934 ······type··········:·'Z'
58935 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)58935 ······access········:·0x0019·(PUBLIC·STATIC·FINAL)
58936 ······value·········:·false58936 ······value·········:·false
58937 ····#4··············:·(in·Lorg/billthefarmer/gurgle/BuildConfig;)58937 ····#4··············:·(in·Lorg/billthefarmer/gurgle/BuildConfig;)
58938 ······name··········:·'VERSION_CODE'58938 ······name··········:·'VERSION_CODE'
Offset 59915, 15 lines modifiedOffset 59915, 15 lines modified
59915 05049e:·6e10·7209·0300·························|0041:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.find:()Z·//·method@097259915 05049e:·6e10·7209·0300·························|0041:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.find:()Z·//·method@0972
59916 0504a4:·0a04···································|0044:·move-result·v459916 0504a4:·0a04···································|0044:·move-result·v4
59917 0504a6:·3804·1a00······························|0045:·if-eqz·v4,·005f·//·+001a59917 0504a6:·3804·1a00······························|0045:·if-eqz·v4,·005f·//·+001a
59918 0504aa:·6e10·7809·0300·························|0047:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.start:()I·//·method@097859918 0504aa:·6e10·7809·0300·························|0047:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.start:()I·//·method@0978
59919 0504b0:·0a04···································|004a:·move-result·v459919 0504b0:·0a04···································|004a:·move-result·v4
59920 0504b2:·6e10·7009·0300·························|004b:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.end:()I·//·method@097059920 0504b2:·6e10·7009·0300·························|004b:·invoke-virtual·{v3},·Ljava/util/regex/Matcher;.end:()I·//·method@0970
59921 0504b8:·0a03···································|004e:·move-result·v359921 0504b8:·0a03···································|004e:·move-result·v3
59922 0504ba:·1805·f1e5·8c56·8201·0000···············|004f:·const-wide·v5,·#double·8.19808e-312·//·#00000182568ce5f159922 0504ba:·1805·404c·f584·8201·0000···············|004f:·const-wide·v5,·#double·8.20192e-312·//·#0000018284f54c40
59923 0504c4:·7120·a608·6500·························|0054:·invoke-static·{v5,·v6},·Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long;·//·method@08a659923 0504c4:·7120·a608·6500·························|0054:·invoke-static·{v5,·v6},·Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long;·//·method@08a6
59924 0504ca:·0c05···································|0057:·move-result-object·v559924 0504ca:·0c05···································|0057:·move-result-object·v5
59925 0504cc:·6e20·0d09·5100·························|0058:·invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;.format:(Ljava/lang/Object;)Ljava/lang/String;·//·method@090d59925 0504cc:·6e20·0d09·5100·························|0058:·invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;.format:(Ljava/lang/Object;)Ljava/lang/String;·//·method@090d
59926 0504d2:·0c01···································|005b:·move-result-object·v159926 0504d2:·0c01···································|005b:·move-result-object·v1
59927 0504d4:·6e40·7d00·4213·························|005c:·invoke-virtual·{v2,·v4,·v3,·v1},·Landroid/text/SpannableStringBuilder;.replace:(IILjava/lang/CharSequence;)Landroid/text/SpannableStringBuilder;·//·method@007d59927 0504d4:·6e40·7d00·4213·························|005c:·invoke-virtual·{v2,·v4,·v3,·v1},·Landroid/text/SpannableStringBuilder;.replace:(IILjava/lang/CharSequence;)Landroid/text/SpannableStringBuilder;·//·method@007d
59928 0504da:·6e20·0b00·2000·························|005f:·invoke-virtual·{v0,·v2},·Landroid/app/AlertDialog$Builder;.setMessage:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder;·//·method@000b59928 0504da:·6e20·0b00·2000·························|005f:·invoke-virtual·{v0,·v2},·Landroid/app/AlertDialog$Builder;.setMessage:(Ljava/lang/CharSequence;)Landroid/app/AlertDialog$Builder;·//·method@000b
59929 0504e0:·1401·0a00·0401·························|0062:·const·v1,·#float·2.42446e-38·//·#0104000a59929 0504e0:·1401·0a00·0401·························|0062:·const·v1,·#float·2.42446e-38·//·#0104000a
3.54 KB
classes.jar
1.71 KB
zipinfo {}
    
Offset 1, 8 lines modifiedOffset 1, 8 lines modified
1 Zip·file·size:·728486·bytes,·number·of·entries:·2881 Zip·file·size:·728488·bytes,·number·of·entries:·288
2 ?rwxrwxr-x··2.0·unx······224·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider$PathStrategy.class2 ?rwxrwxr-x··2.0·unx······224·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider$PathStrategy.class
3 ?rwxrwxr-x··2.0·unx·····6717·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider.class3 ?rwxrwxr-x··2.0·unx·····6717·b-·stor·80-Jan-01·00:00·android/support/v4/content/FileProvider.class
4 ?rwxrwxr-x··2.0·unx·····1663·b-·stor·80-Jan-01·00:00·com/google/zxing/BarcodeFormat.class4 ?rwxrwxr-x··2.0·unx·····1663·b-·stor·80-Jan-01·00:00·com/google/zxing/BarcodeFormat.class
5 ?rwxrwxr-x··2.0·unx······750·b-·stor·80-Jan-01·00:00·com/google/zxing/Binarizer.class5 ?rwxrwxr-x··2.0·unx······750·b-·stor·80-Jan-01·00:00·com/google/zxing/Binarizer.class
6 ?rwxrwxr-x··2.0·unx·····1767·b-·stor·80-Jan-01·00:00·com/google/zxing/BinaryBitmap.class6 ?rwxrwxr-x··2.0·unx·····1767·b-·stor·80-Jan-01·00:00·com/google/zxing/BinaryBitmap.class
7 ?rwxrwxr-x··2.0·unx·····1707·b-·stor·80-Jan-01·00:00·com/google/zxing/DecodeHintType.class7 ?rwxrwxr-x··2.0·unx·····1707·b-·stor·80-Jan-01·00:00·com/google/zxing/DecodeHintType.class
8 ?rwxrwxr-x··2.0·unx······800·b-·stor·80-Jan-01·00:00·com/google/zxing/Dimension.class8 ?rwxrwxr-x··2.0·unx······800·b-·stor·80-Jan-01·00:00·com/google/zxing/Dimension.class
Offset 283, 8 lines modifiedOffset 283, 8 lines modified
283 ?rwxrwxr-x··2.0·unx·····2170·b-·stor·80-Jan-01·00:00·com/google/zxing/oned/UPCEWriter.class283 ?rwxrwxr-x··2.0·unx·····2170·b-·stor·80-Jan-01·00:00·com/google/zxing/oned/UPCEWriter.class
284 ?rwxrwxr-x··2.0·unx·····7752·b-·stor·80-Jan-01·00:00·com/google/zxing/oned/rss/RSS14Reader.class284 ?rwxrwxr-x··2.0·unx·····7752·b-·stor·80-Jan-01·00:00·com/google/zxing/oned/rss/RSS14Reader.class
285 ?rwxrwxr-x··2.0·unx····11760·b-·defN·80-Jan-01·00:00·com/google/zxing/oned/rss/expanded/RSSExpandedReader.class285 ?rwxrwxr-x··2.0·unx····11760·b-·defN·80-Jan-01·00:00·com/google/zxing/oned/rss/expanded/RSSExpandedReader.class
286 ?rwxrwxr-x··2.0·unx·····1891·b-·stor·80-Jan-01·00:00·com/google/zxing/oned/rss/expanded/decoders/AI013x0x1xDecoder.class286 ?rwxrwxr-x··2.0·unx·····1891·b-·stor·80-Jan-01·00:00·com/google/zxing/oned/rss/expanded/decoders/AI013x0x1xDecoder.class
287 ?rwxrwxr-x··2.0·unx······924·b-·stor·80-Jan-01·00:00·com/google/zxing/oned/rss/expanded/decoders/AI013x0xDecoder.class287 ?rwxrwxr-x··2.0·unx······924·b-·stor·80-Jan-01·00:00·com/google/zxing/oned/rss/expanded/decoders/AI013x0xDecoder.class
288 ?rwxrwxr-x··2.0·unx······491·b-·stor·80-Jan-01·00:00·com/google/zxing/oned/rss/expanded/decoders/AI013103decoder.class288 ?rwxrwxr-x··2.0·unx······491·b-·stor·80-Jan-01·00:00·com/google/zxing/oned/rss/expanded/decoders/AI013103decoder.class
289 ?rwxrwxr-x··2.0·unx······538·b-·stor·80-Jan-01·00:00·com/google/zxing/oned/rss/expanded/decoders/AI01320xDecoder.class289 ?rwxrwxr-x··2.0·unx······538·b-·stor·80-Jan-01·00:00·com/google/zxing/oned/rss/expanded/decoders/AI01320xDecoder.class
290 288·files,·758259·bytes·uncompressed,·677298·bytes·compressed:··10.7%290 288·files,·758259·bytes·uncompressed,·677300·bytes·compressed:··10.7%
600 B
org/billthefarmer/gurgle/BuildConfig.class
516 B
procyon -ec {}
    
Offset 1, 12 lines modifiedOffset 1, 12 lines modified
  
1 package·org.billthefarmer.gurgle;1 package·org.billthefarmer.gurgle;
  
2 public·final·class·BuildConfig2 public·final·class·BuildConfig
3 {3 {
4 ····public·static·final·String·APPLICATION_ID·=·"org.billthefarmer.gurgle";4 ····public·static·final·String·APPLICATION_ID·=·"org.billthefarmer.gurgle";
5 ····public·static·final·String·BUILD_TYPE·=·"release";5 ····public·static·final·String·BUILD_TYPE·=·"release";
6 ····public·static·final·long·BUILT·=·1659309450737L;6 ····public·static·final·long·BUILT·=·1660088044608L;
7 ····public·static·final·boolean·DEBUG·=·false;7 ····public·static·final·boolean·DEBUG·=·false;
8 ····public·static·final·int·VERSION_CODE·=·112;8 ····public·static·final·int·VERSION_CODE·=·112;
9 ····public·static·final·String·VERSION_NAME·=·"1.12";9 ····public·static·final·String·VERSION_NAME·=·"1.12";
10 }10 }
1.22 KB
org/billthefarmer/gurgle/Gurgle.class
1.15 KB
procyon -ec {}
    
Offset 146, 15 lines modifiedOffset 146, 15 lines modified
146 ········final·SpannableStringBuilder·message·=·new·SpannableStringBuilder(this.getText(2131230758));146 ········final·SpannableStringBuilder·message·=·new·SpannableStringBuilder(this.getText(2131230758));
147 ········final·Matcher·matcher·=·Pattern.compile("%s").matcher((CharSequence)message);147 ········final·Matcher·matcher·=·Pattern.compile("%s").matcher((CharSequence)message);
148 ········if·(matcher.find())·{148 ········if·(matcher.find())·{
149 ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)"1.12");149 ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)"1.12");
150 ········}150 ········}
151 ········matcher.reset((CharSequence)message);151 ········matcher.reset((CharSequence)message);
152 ········if·(matcher.find())·{152 ········if·(matcher.find())·{
153 ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)dateTimeInstance.format(Long.valueOf(1659309450737L)));153 ············message.replace(matcher.start(),·matcher.end(),·(CharSequence)dateTimeInstance.format(Long.valueOf(1660088044608L)));
154 ········}154 ········}
155 ········alertDialog$Builder.setMessage((CharSequence)message);155 ········alertDialog$Builder.setMessage((CharSequence)message);
156 ········alertDialog$Builder.setPositiveButton(17039370,·(DialogInterface$OnClickListener)null);156 ········alertDialog$Builder.setPositiveButton(17039370,·(DialogInterface$OnClickListener)null);
157 ········final·TextView·textView·=·(TextView)((Dialog)alertDialog$Builder.show()).findViewById(16908299);157 ········final·TextView·textView·=·(TextView)((Dialog)alertDialog$Builder.show()).findViewById(16908299);
158 ········if·(textView·!=·null)·{158 ········if·(textView·!=·null)·{
159 ············textView.setTextAppearance(alertDialog$Builder.getContext(),·16973894);159 ············textView.setTextAppearance(alertDialog$Builder.getContext(),·16973894);
160 ············textView.setMovementMethod(LinkMovementMethod.getInstance());160 ············textView.setMovementMethod(LinkMovementMethod.getInstance());
508 B
smali/org/billthefarmer/gurgle/Gurgle.smali
    
Offset 255, 15 lines modifiedOffset 255, 15 lines modified
  
255 ····move-result·v4255 ····move-result·v4
  
256 ····invoke-virtual·{v3},·Ljava/util/regex/Matcher;->end()I256 ····invoke-virtual·{v3},·Ljava/util/regex/Matcher;->end()I
  
257 ····move-result·v3257 ····move-result·v3
  
258 ····const-wide·v5,·0x182568ce5f1L258 ····const-wide·v5,·0x18284f54c40L
  
259 ····.line·1259259 ····.line·1259
260 ····invoke-static·{v5,·v6},·Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;260 ····invoke-static·{v5,·v6},·Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
  
261 ····move-result-object·v5261 ····move-result-object·v5
  
262 ····invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String;262 ····invoke-virtual·{v1,·v5},·Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String;
577 B
smali/org/billthefarmer/gurgle/BuildConfig.smali
    
Offset 4, 15 lines modifiedOffset 4, 15 lines modified
  
  
4 #·static·fields4 #·static·fields
5 .field·public·static·final·APPLICATION_ID:Ljava/lang/String;·=·"org.billthefarmer.gurgle"5 .field·public·static·final·APPLICATION_ID:Ljava/lang/String;·=·"org.billthefarmer.gurgle"
  
6 .field·public·static·final·BUILD_TYPE:Ljava/lang/String;·=·"release"6 .field·public·static·final·BUILD_TYPE:Ljava/lang/String;·=·"release"
  
7 .field·public·static·final·BUILT:J·=·0x182568ce5f1L7 .field·public·static·final·BUILT:J·=·0x18284f54c40L
  
8 .field·public·static·final·DEBUG:Z·=·false8 .field·public·static·final·DEBUG:Z·=·false
  
9 .field·public·static·final·VERSION_CODE:I·=·0x709 .field·public·static·final·VERSION_CODE:I·=·0x70
  
10 .field·public·static·final·VERSION_NAME:Ljava/lang/String;·=·"1.12"10 .field·public·static·final·VERSION_NAME:Ljava/lang/String;·=·"1.12"