본문 바로가기

SHSH? ECID? 의 원리와 이해

왜 Shsh를 백업하라는 거지?


지금 iOS4 쓰는 사람중에 많은 사람들이 다운그레이드 하는 추세입니다. 아직 iOS4의 버그등 문제가 많죠, 그리고 탈옥.
지금현재론 데브팀에서 4 탈옥툴 완성을 했으나.4.01 때문에 아직 릴리즈를 하지 않고 있습니다. 자칫하다 막힐수도 있으니깐요.
지오핫도 성공인증을 올렸는데. 3.1.3탈옥때문에 사람들이 차가운시선으로 보네요.

옛날에는 3.1.2버젼 블랙레인으로 반탈옥하던시절 애플에서 3.1.3 패치를 내놓았죠. 덕분에 스피릿탈옥툴 나올때까지는 반탈옥 혹은 순정으로 계속 써야했죠.
이때 아무것도 모르고 3.1.3업데이트 한사람은 크게 피를 본겁니다. 그래서 다운그래이드 하고 싶은데 shsh파일 있는사람은 쉽게 다운그레이드 되었지만 그렇지 못한사람은 3.1.3버젼을 계속 사용했어야 했죠.

탈옥한사람은 거의 필수적 입니다. (재탈옥, 다운그레이드 할때)
계속 순정을 쓴다거나 최신버젼이 마음에 드신다면 꼭 백업할 필요는 없습니다.

참고로 3G나 아이팟같은 경우 shsh파일이 없어도 다운그레이드 한 사례가 있더군요.

그럼 Shsh가 뭐지?

SHSH란 ECID를 저장한 파일이라고 보시면 됩니다.
ECID는 각기기의 고유번호가 담겨진 파일이라고 보시면됩니다. 즉 아이폰 주민등록증 이죠
애플에는 펌웨어 업데이트 할때 서버에 각 기기ECID 를 확인하고 펌웨어를 해주는 방식입니다.
 

위의 그림과 같이 펌웨어를 할려면 애플서버에 기기정보를 받아서 펌웨어를 진행하게 됩니다.

그럼 shsh안받고 다운그레이드 하면?
일단 애플서버에서 접속하는거 까지는 똑같습니다.
여기에서 ECID를 확인을 하게 되는데 애플은 최신펌웨어를 내놓으면 그전버젼은 막아버립니다.
즉, iOS4를 배포를 하면 3.1.3은 막아버리는거죠.

그래서 ECID담긴 정보를 SHSH로 받아서 시디아서버 또는 자기컴퓨터에 파일저장하는 겁니다.




그럼 Shsh를 백업하고 다운그레이드 하면?


아래그림과 같이 hosts파일을 74.208.10.249 gs.apple.com 을 넣어주시면 애플서버로 가지않고 시디아 서버에 가게됩니다.
그럼 시디아에 저장된 3.1.3 shsh파일을 불려오는거죠. 즉, 시디아가 애플서버처럼 작동하신다고 보셔도 됩니다.

그럼 3.1.3shsh 파일을 백업본이 있으니 3.1.3으로 다운그레이드 가능하게 됩니다.
물론 컴퓨터로 저장할때는 자기컴으로 접속해서 ECID정보를 받아서 다운그래이드 하는방식이죠.




마무리
다운그레이드 할려는데 shsh파일 백업안하신분이 많더군요.
-다른shsh파일으로 하면 안될까요?
-shsh지금 백업안되나요?
-shsh가 뭐죠?
등등..
요약하자면 ECID는 각 기기정보를 담고 있기때문에 다른 shsh파일로는 사용할 수 가 없으며, shsh파일 경우 최신버젼는 백업가능하나 그전버젼은 애플이 막아버리면 다운을 못받습니다. (현 iOS4가 나온시점에서는 3.1.3shsh를 막아놓았기 때문에 백업불가능하죠.)

즉, 지금 iOS4를 깔아놓으신분중에 3.1.3shsh파일 백업안한 상태에서 탈옥하시려면 애플이 4.0.1 펌웨어 버젼배포하고 데브팀에서 iOS4 탈옥툴을 배포하는 쪽으로 기대를 거셔야겠네요 (지금이라도 iOS4 백업해놓으세요. 혹이나 4.0.1 펌웨어 배포했는데 데브팀 iOS4 해킹툴이 안된다면 다시 다운그레이드 하셔야하니깐요)

제가 아는데로 적은거라 틀린점도 많고 그림에서도 틀린부분 있을껍니다. 이글보시고 많은 도움이 되었으면 좋겠습니다.