2 पॉइंट द्वारा GN⁺ 2026-01-28 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Android के लिए SSH client JuiceSSH दिसंबर 2025 के बाद मौजूदा खरीदारों के भुगतानों को पहचान नहीं पा रहा है
  • 2019 में खरीदने वाले उपयोगकर्ताओं का license अमान्य हो गया, कीमत 20 डॉलर बढ़ गई, और कुछ उपयोगकर्ताओं को दोबारा खरीदने के बाद भी activation न होने की समस्या हुई
  • support team के जवाब न देने की वजह से उपयोगकर्ता इसे लगभग ‘exit scam’ की तरह देख रहे हैं
  • लेख में ApkTool, jadx, jarsigner आदि का उपयोग करके app को decompile कर smali code में बदलाव करके Pro फीचर्स बहाल करने का तरीका चरण-दर-चरण बताया गया है
  • cloud sync और plugins अब काम नहीं करते, लेकिन इसे Pro फीचर्स फिर से इस्तेमाल करने के तरीके के रूप में पेश किया गया है

JuiceSSH की समस्या की स्थिति

  • JuiceSSH Android पर उपलब्ध एक SSH client है, और लेखक ने 2025 के दिसंबर तक इसे सबसे बेहतरीन app माना
  • 2019 में खरीदा गया Pro version license अब पहचाना नहीं जा रहा, और कीमत 20 डॉलर बढ़ गई
  • कुछ उपयोगकर्ताओं ने review में लिखा कि दोबारा खरीदने के बाद भी app activate नहीं होता
  • Google Play पर app को list से हटा दिया गया है, और support team जवाब नहीं दे रही
  • लेखक ने इस स्थिति को exit scam कहा है

app बहाली की तैयारी

  • app को फिर से चलाने के लिए jadx, ApkTool, jarsigner (OpenJDK सहित) जैसे tools की जरूरत है
    • Windows में इसे choco install openjdk से install किया जा सकता है
  • JuiceSSH APK को PureAPK से download किया जा सकता है, या adb का उपयोग करके सीधे extract किया जा सकता है
  • download करते समय SHA256 hash verification जरूरी है
    • आखिरी version (3.2.2) का hash d1ee811bcd82f25aea0bdc568896d82017ee174d9c4631c123a9d9173c748232 है

decompile चरण

  • ApkTool का उपयोग करके APK के DEX code को decompile करें
    & "C:\Program Files\OpenJDK\jdk-25\bin\java.exe" -jar ./apktool_2.12.1.jar d juicessh.apk
    

smali code में बदलाव

  • तीन smali files में बदलाव करना होगा

1. smali/com/sonelli/juicessh/models/User.smali

  • public boolean H() function purchase और signature verification करता है
  • मूल verification logic हटाकर इसे हमेशा true return करने के लिए बदलें
    public boolean H() {
        return true;
    }
    

2. smali/com/sonelli/oi0.smali

  • public static boolean d(Object obj) function ऊपर वाले H() को call करके purchase validity जांचता है
  • इसे हमेशा true return करने के लिए बदलें
    public static boolean d(Object obj) {
        return obj.getClass().getName().equals(User.class.getName());
    }
    

3. smali/com/sonelli/pi0.smali

  • public static void j(Context context, p pVar) function Pro फीचर authentication का मुख्य हिस्सा है
  • मूल रूप से यह user session को verify करता है और expiry होने पर re-authentication करता है
  • बदले हुए version में एक नकली user object बनाया जाता है, session expiry को 1 साल आगे सेट किया जाता है, और हमेशा success callback call किया जाता है
    public static void j(Context context, p pVar) {
        User user = new User();
        user.email = "myemail@google.com";
        user.name = "hello";
        user.given_name = "hello";
        user.sessionExpires = System.currentTimeMillis() + (86400000 * 365);
        user.sessionIdentifier = "";
        b = user;
        pVar.b(user);
    }
    

recompile और signing

  • बदलाव के बाद APK को फिर से build करें
    & "C:\Program Files\OpenJDK\jdk-25\bin\java.exe" -jar .\apktool_2.12.1.jar b juicessh
    
  • बनी हुई file juicessh\dist\juicessh.apk में होगी
  • खुद के signing keystore का निर्माण और APK signing
    keytool -genkey -v -keystore k.keystore -alias a -keyalg RSA -keysize 2048 -validity 50000
    jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore k.keystore ./juicessh/dist/juicessh.apk a
    

परिणाम और सीमाएं

  • signed APK install करने पर security warning को नज़रअंदाज़ करके Pro फीचर्स फिर से इस्तेमाल किए जा सकते हैं
  • cloud sync फीचर काम नहीं करेगा, और plugins भी अब समर्थित नहीं हैं
  • लेखक ने इस स्थिति को developer पर भरोसा टूटने के रूप में बताया और इसे “मज़ाक जैसी बात” कहा

1 टिप्पणियां

 
GN⁺ 2026-01-28
Hacker News की राय
  • सपोर्ट टीम पूरी तरह चुप है, इसलिए यह लगभग exit scam जैसा लग रहा है
    बहुत से यूज़र्स के पैसे डूब जाने के बाद अब जाकर इस मुद्दे पर ध्यान गया है
    दोनों डेवलपर इस समय क्रमशः Microsoft और AWS में मैनेजमेंट भूमिकाओं में हैं और ईमेल को अनदेखा कर रहे हैं
    JuiceSSH को ऐसे ही छोड़ दिया गया है, बिना refund, source खोलने, या आख़िरी update के भी
    Google Play सपोर्ट से संपर्क किया, लेकिन सिर्फ़ यही जवाब मिला कि भुगतान के 120 दिन बाद refund संभव नहीं है
    संबंधित लिंक: JuiceSSH परिचय, Sonelli परिचय, Paul Maddox, Tom Maddox

    • ऊपर दिए गए कुछ लिंक पर CloudFront error आता है, लेकिन sonelli.com अभी भी खुल रहा है
      कुछ महीने पहले मैंने in-app feature से license फिर से activate किया था, लेकिन ठीक कब किया था यह याद नहीं
  • मैं कई सालों से यह app इस्तेमाल कर रहा हूँ, लेकिन हाल में forwarding feature (Pro feature) इस्तेमाल करने की कोशिश की तो फिर से भुगतान करने का संदेश मिला
    मैंने इसे 2014 में 5 euro में खरीदा था, लेकिन इस बार 30 euro फिर से दे दिए, और उसी क्षण पूरा app lock हो गया
    कई बार ईमेल भेजे, लेकिन कोई जवाब नहीं मिला

    • अगर अभी संभव हो, तो Google से refund माँगने की सलाह दूँगा
      Google Play refund policy के अनुसार यह 48 घंटे के भीतर ही संभव है, लेकिन “खरीद बिल्कुल काम नहीं करती” एक exception हो सकता है
    • समझ नहीं आता कि लोग ऐसे feature के लिए पैसे क्यों देते हैं
      Termux जेब में एक छोटा Linux है, इसलिए SSH से जुड़ी सारी सुविधाएँ उसमें हैं
  • मैं “JuiceSSH Android पर सबसे बेहतरीन है” इस बात से सहमत नहीं हूँ, लेकिन मैं हमेशा Termux + Unexpected Keyboard का ही इस्तेमाल करता आया हूँ
    मुझे कल्पना नहीं होती कि कोई दूसरा app इस experience को बेहतर कैसे बना सकता है
    जानना चाहूँगा कि JuiceSSH इतना अच्छा क्यों माना जाता है

    • अभी चर्चा इस बात पर है कि JuiceSSH अब काम नहीं कर रहा और उसका सपोर्ट बंद हो चुका है। शायद यही उसका जवाब है
    • पहले मैंने कुछ समय के लिए JuiceSSH Pro मुफ्त में इस्तेमाल किया था, लेकिन अब Termux कहीं बेहतर लगता है
      SSH key और alias config, multi-hop connection सब संभव हैं, और AnySoftKeyboard का shortcut support इसे ज़्यादा efficient बनाता है
      यह सब F-Droid से install किया जा सकता है
    • मैंने JuiceSSH या Termux दोनों में से कोई इस्तेमाल नहीं किया, लेकिन ConnectBot से SSH और port forwarding अच्छे से इस्तेमाल करता रहा हूँ
      VNC session connect करने में भी कोई दिक्कत नहीं हुई
    • हैरानी है कि किसी ने ServerBox का ज़िक्र नहीं किया
      ServerBox (F-Droid) भी एक अच्छा alternative है
    • मैंने JuiceSSH Pro बहुत पहले खरीदा था और आज भी रोज़ इस्तेमाल करता हूँ
      कुछ servers पर one-click से connect हो जाता है, और devices के बीच sync भी सुविधाजनक था
      हाल में Termux आज़माया तो लगा कि यह उसका विकल्प बन सकता है, लेकिन copy-paste या app switching के समय connection बनाए रखने में JuiceSSH बेहतर है
  • मैंने Pro version काफ़ी समय से इस्तेमाल नहीं किया, लेकिन अगर अभी करना हो तो शायद Android 15 से मिलने वाला Terminal app इस्तेमाल करूँगा
    यह पूरा Debian VM environment है

    • हालाँकि Snapdragon chip ज़रूरी feature को support नहीं करती, इसलिए यह सिर्फ़ Pixel या MediaTek devices पर संभव है
    • Termux VM इस्तेमाल नहीं करता, इसलिए उसे ज़्यादा हल्के तरीके से इस्तेमाल किया जा सकता है
    • क्या आपका मतलब Termux से है? इसी तरह नाम वाले किसी और Terminal app के बारे में मुझे नहीं मिला
  • यह घटना शायद Morphie या ReVanced जैसे patch automation tools को परिचित कराने का अच्छा मौका हो सकती है

    • ReVanced के बारे में जानता हूँ, लेकिन Morphie का नाम पहली बार सुना है
      खोजने पर पता चला कि इसे morphe.software पर देखा जा सकता है
      फिलहाल यह सिर्फ़ YouTube को support करने वाला ReVanced का derivative project लगता है
      संदर्भ के लिए, ReVanced official site की शुरुआत मूल ad-free YouTube app (Vanced) से हुई थी, और अब यह कई apps को patch करने वाले tool में विकसित हो चुका है
  • मैंने अभी देखा कि Pro feature plugins सभी Play Store से हटा दिए गए हैं
    पहले मुझे यह Android पर सबसे अच्छा SSH client लगता था, इसलिए यह सच में अफ़सोस की बात है

  • इस घटना ने मुझे फिर से cloud key storage के जोखिम का एहसास कराया
    मैं अपनी सारी .ssh keys हटाकर ed25519 आधारित नए keys सेट करने वाला हूँ

    • मुझे भी लगा था कि मैंने अपनी SSH keys का backup JuiceSSH में रखा है, लेकिन अब लगता है कि यह जोखिम भरा हो सकता है
      अगर keys जल्दी नहीं बदलीं, तो यह security nightmare बन सकता है
  • समझ सकता हूँ कि ऐसे पोस्ट क्यों आ रहे हैं, लेकिन मुझे लगता है कि यह शायद बहुत जल्दी निकाला गया निष्कर्ष भी हो सकता है
    हो सकता है डेवलपर या सपोर्ट टीम overload में हों और इसलिए जवाब देने में देर हो रही हो, या app किसी bug से टूट गया हो
    bug report, refund request, या alternative app का इस्तेमाल करना शायद बेहतर प्रतिक्रिया होगी
    side-loading के बारे में नकारात्मक धारणा तक बात बढ़ना और भी चिंता की बात है

    • लेकिन app कई सालों तक लगभग बिना बदलाव के ठीक चलता रहा, फिर अचानक कीमत बढ़ी और Pro features बंद हो गए
      पूरी चुप्पी के बीच सिर्फ़ पैसे लेते रहना स्वीकार करना मुश्किल है
      कम से कम “हमने source code तक पहुँच खो दी” इतना तो कहना चाहिए था
  • 2 साल पहले मैंने JuiceSSH को पूरी तरह ConnectBot से replace कर दिया था
    यह मुफ्त है और बिना समस्या के अच्छे से काम करता है
    Play Store लिंक

    • F-Droid version और GitHub repository भी उपलब्ध हैं
    • मैंने JuiceSSH या Termux इस्तेमाल नहीं किया, लेकिन ConnectBot एक स्थिर और भरोसेमंद SSH client है