Tổng hợp mọi thứ về SHSH và TinyUmbrella dành cho IOS
SHSH là gì? Tại sao phải lưu SHSH? Lưu SHSH như thế nào? Dùng SHSH như thế nào? Bài viết dưới đây sẽ nêu ra 4 cái tổng quan nhất và có lẽ là cần thiết nhất trong những câu hỏi về SHSH như trên.
1. File .SHSH là gì?
Để trả lời cho câu hỏi này chúng ta cần lướt qua câu hỏi "phụ thuộc trước" đó là ECID là gì?
ECID được viết tắc từ chữ Exclusive Chip ID. Nó là mã số của 1 con chip nhỏ mà Apple đã gắn vào các thiết bị iPhone, iPod touch, iPad, AppleTV. Mỗi iPhone (iDevices) là một mã số khác nhau, qua đó, Apple có thể chứng thực được iPhone nào khi kết nối với Server của Apple. ECID không thể thay đổi được bằng software, chỉ có thể thay đổi bằng cách thay chip khác.
File .SHSH là gì?
Như đã nói ở trên, mỗi iPhone đều có một mã số riêng gọi là ECID. SHSH như là một tờ chứng nhận cho mã số đó. SHSH được lưu trữ trên Server của Apple. Mỗi khi chúng ta restore iPhone của mình, bước thứ 2 là gian đoạn "Verifying with Apple Server". Đó chính là lúc Itunes đã kết nối với server và đang kiểm chứng xem ECID của mình có hợp lệ hay không thông qua file .shsh đã lưu tại đó.
File .SHSH chỉ có duy nhất Apple tạo ra được và mỗi máy iPhone có 1 file .SHSH được Apple cấp cho mỗi bản firmware. SHSH cho firmware nào thì dùng để xác nhận cho firmware đó khi bạn restore.
File .SHSH cũng được lưu tại Saurik Server khi bạn kết nối Cydia và có nhu cầu muốn lưu lại (Bạn sẽ xem cách lưu SHSH ở dưới)
2. Tại sao cần phải lưu file .SHSH
SHSH được coi là giấy chứng nhận hay chứng chỉ để chứng thực cho iPhone khi restore firmware. Khi Apple nâng cấp Firmware lên bản mới hơn thì sẽ đóng cửa không cho ta dùng SHSH cho firmware cũ. Và như thế ta không thể restore xuống firmware cũ (thấp) hơn. Một khi Apple đã kiểm tra ECID (thông qua .SHSH), chúng ta chỉ có thể restore ở phiên bản mới nhất của Apple mà thôi. Chính vì vậy, chúng ta cần phải lưu file .SHSH của mình vào một server khác (như saurik) hoặc lấy về máy tính để sử dụng sau này.
Có 2 cách để restore về phiên bản thấp hơn mà không cần phải qua Server của Apple.
1/ Sửa file hosts trong máy tính của mình, vì mặc định server của Apple trong iTtunes là gs.apple.com cho nên chúng ta đưa địa chỉ của một server khác kèm theo gs.apple.com. Ví du : 123.0.0.1 gs.apple.com. Làm như vậy để đánh lừa iTunes cho giai đoạn Veryfying........Dĩ nhiên, trong server đó phải có file shsh của mình.
2/ Dùng tinyumbrella để tạo một mini-server ngay trên máy tính của mình. Khi các bạn đã lấy được file shsh về máy tính, cách này rất đơn giản và an toàn hơn lưu file .SHSH tai Server của người ta. Ví dụ một ngày nào đó server cua saurik bị down thì file .SHSH của mình cũng tiêu luôn.
3. Lưu .SHSH như thế nào?
Công cụ duy nhất để lưu SHSH một cách đầy đủ là tinyumbrella
Cập nhật tinyumbrella v6.01.01
Download tinyumbrella Windows
Download tinyumbrella OSX
Download tinyumbrella tại đây:
Bạn cần cài đặt jre (Java Runtime Environment) trước để có thể chạy tinyumbrella
Download jre tại đây:.
Máy tính phải cài:Microsoft .net Framework 3.5
Trong đó bạn chọn bộ cài đặt cho hệ điều hành bạn dùng. Bạn chọn bộ cài Online hay Offline là tùy ý. Cài đặt jre xong thì bạn đã sẵn sàng mở tinyumbrella lên. Kết nối iPhone với máy tính của bạn và mở tinyumbrella. Tinyumbrella có thể đọc các thông số của iPhone dù máy bạn có thể đang ở chế độ Recovery Mode, DFU mode hay bình thường. Khi bạn kết nối vào nó sẽ hiển thị như sau
1. Chuột được kích vào số 1
2. Để lưu (lấy về máy) các SHSH thì bạn ấn vào số 2
3. Thanh số 4 sẽ chạy đầy dần
4. Ô số 3 sẽ hiển thị các SHSH lấy được (lưu được vào Cydia)
5. Mục số 5 hiển thị toàn bộ thông tin khi ấn vào dòng số 1
6. Nút 6 dùng để lấy SHSH cho thiết bị khác không có sẵn (cần có ECID của thiết bị đó)
7. Nút số 7 giúp đưa iPhone về chế độ Recovery Mode (mới có ở bản 4.1.13)
8. Nút số 8 giúp iPhone thoát khỏi chế độ Recovery Mode (ở chế độ Recovery Mode thì nó mới hiện lên)
9. Nút số 9 để tạo local server tên máy tính khi ta restore về firmware thấp
Như vậy là bạn đã lưu được SHSH rồi
4. Cách dùng File. SHSH để dowgrade firmware (hạ xuống)
1. Mở tinyumbrella lên, kết nối iPhone với máy tính
2. Chọn Save SHSH (bắt buộc phải làm để lấy SHSH về máy vì dùng local sever)
3. Bấm nút Start TTS Server (ở mục Log cần báo TTS Server Started!)
4. Để nguyên tinyumbrella, mở iTunes lên
5. Bấm Shift + Restore và trỏ đến bản firmware bạn muốn restore mà đã lưu được SHSH về máy tính
6. iTunes chạy cho đến khi hoàn thành
7. Xong nếu iTunes không báo lỗi hoặc báo lỗi 1004 (lỗi 1004 là do baseband không bị thay đổi)
8. Nếu bị lỗi 1004 thì chuyển sang tinyumbrella chọn nút Exit Recovery
9. Đã xong