본문 바로가기
IT 리뷰/애플 관련 리뷰

ECID란 무엇인가?

by URBAN 2010. 3. 12.
반응형





일단 현재로서는 3.1.3 한국정발폰(신형부트룸)은 해킹이 되질 않는데

왜 안되는지에 대한 의문에 많은 것 같아서 ECID가 무엇인지 개념 정리를 위해

인터넷을 뒤지다 퍼왔습니다.




1. ECID란 무엇인가?

간단히 생각하시면 하나하나의 아이폰의 고유 키값으로 생각하시면 되겠습니다. 즉 한대 한대의 모든 아이폰은 다른 ECID 값을 가진다고 생각하시면 됩니다.

2. ECID의 백업이란?

자신이 가지고 있는 아이폰의 고유 ECID 키값을 암호화한 파일을 뜻합니다. 확장자는 XXX.shsh 입니다.

즉 위 ECID백업이란 ECID의 고유 넘버가 아닌 이를 암호화 및 가공한 shsh파일을 말합니다.

위 ECID shsh 파일은 애플서버에서 가지고 올 수가 있었으나 2010년 2월 4일부로 애플측에서 제공을 중단 하였습니다.

즉 그전에 자신의 ECID값에 대응하는 shsh파일을 받아 놓지 않은 분은 현재 어떤 경로를 통해서든 shsh파일을 받을수가 없습니다.

 

*shsh의 파일을 만드는 방법(즉 암호화방식)은 현재 해석이 불가능하며 그것을 새로히 제작하는것도 불가능합니다.

한마디로 애플만 할수있다는 것 입니다.

 

3. 구부트롬과 신부트롬?

구부트롬은 09년 41주차 이전에 생산된 아이폰의 부트롬을 통칭합니다. 신부트롬은 이후 생산된 아이폰의 부트롬을 통칭합니다. KT에서 정식으로 판매하는 아이폰의 경우 신규부트롬입니다.

구 부트롬과 신부트롬의 판별에 관해서는 카페 검색해 보시면 알 수 있습니다.

(간혹 국내 KT를 통해 정식 출시된 아이폰에도 구부트롬이 적용된 제품이 있습니다.) 

 

4. 3.1.3 에서 3.1.2로 복원이 왜 않되는지?

 

3.1.3 등 이하 모든 업데이트 버젼의 명칭은 부트롬의 업데이트 버젼 명칭입니다.

쉽게 설명을 드리겠습니다.

아이튠을 통한 부트롬 업데이트시 아이튠즈는 애플서버에 각각의 아이폰에 대응하는 ECID 키값을 보냅니다. (ECID값은 부트롬에 기록되어 있는것으로 생각되어 지며 이를 요청하는 알고리즘 역시 부트롬에 적용되어 있는것 같습니다.) 이때 애플서버에서 키값에 대응하는 shsh파일을 확인하는 과정을 거치게 됩니다. 즉 애플측 서버에서 현재 제공하는 shsh는 3.1.3입니다. 이하 버젼의 shsh는 위에 말씀 드린것 처럼 중단 되었습니다. 그러니 당연히 3.1.2로 복원은 안되는것입니다. 오로지 3.1.3으로의 복원 및 업데이트만 가능하다는 것 입니다.

(인터넷 연결이 되어있지 않는 PC나 MAC에서는 복원 / 업데이트가 지원되지 않습니다. 이는 애플측 서버의 shsh 확인이 불가능 하기 때문입니다.)

 

여기서 shsh백업의 중요성을 인지하실 수 있을것입니다. 부트롬 펌웨어가 업데이트되면 그에 해당하는 완벽한 툴이 나오기 까지는 시간이 걸립니다. 혹시 실수를 해서 업데이트후 다시 이전 버젼으로 돌아가기 위해서는 shsh백업이 꼭! 필요하다는 점이죠.

5. 3.1.3에서 3.1.2로의 다운그레이드?

 

위에서 언급 드린것을 이해 하셨다면 쉽게 알 수 있듯이 현재 다운그레이드 방식은 애플측 서버의 shsh확인 과정을 시디아서버나 개인컴퓨터를 통하여 우회(속여서) 진행하는 방식입니다.

즉 이는 ECID shsh파일을 애플측 서버로부터 다운받아 가지고 있거나 이를 시디아쪽에 보낸 아이폰 소유자에 한하여 가능하다는 것 입니다. 시디아 접속시 make it easer!(? 정확히 기억이 않나네요^^;;) 버튼을 누르신분은 직접 ECID확인을 통해 애플측 서버에서 shsh파일을 다운받지 않더라도 시디아에서 위 과정을 대행해 준 것 입니다.  umbrella란 프로그램도 자신의 ECID값과 일치하는 shsh파일을 애플측에서 다운받거나 이를 바로 시디아서버에 저장하는 방식으로 구동됩니다. 즉 2010년 2월 4일부로 애플측에서 3.1.2 shsh 제공을 멈췄기 때문에 현재 전혀 3.1.2shsh를 받거나 시디아서버에 저장하는 방법은 없습니다.

5. 구부트롬과 신부트롬의 차이?

 

알고리즘이 상당히 변한것 같으나 제가 부트롬을 해독해 보지 않아서 모르겠습니다. 대충 추측하기를

구부트롬에는 위 업데이트나 다운그레이드시 애플서버를 통한 shsh파일 확인절차 알고리즘에 대한 디스크립(해독작업)이 해커팀에 의해 완벽히(?) 끝난 상태이기 때문에 다운그레이드가 가능한것으로 사료되어 집니다. 그러나 신부트롬은 이 shsh확인 절차에대한 알고리즘의 디스크립(해석)이 해커팀에 의해 완벽히(?) 끝나지 않은상태이기 때문에 꼭! shsh파일을 가지고 있거나 시디아서버측에 저장되어 있어야 하는것입니다. 위 확이절차 외의 알고리즘(기타 시스템(아이폰 작동에 대한 알고리즘)에 대한 디스크립(해석)의 여부에 따라 완탈옥, 반탈옥이란 말이 생긴것입니다.

 

6. 언락과 베이스 밴드?

베이스밴드란? 쉽게 말해서 모뎀이라 생각하시면 되겠습니다. 아이폰은 통신기기이기 때문에 통신 전파를 수신하거나 보내거나 제어하는 모뎀을 가지고 있습니다. 이를 베이스 밴드라고 생각하시면 됩니다. 이 베이스밴드 역시 3.1.3으로 업데이트시 해당 펌웨어에 의해서 버젼이 업데이트 되었습니다. 현재 3.1.3 업데이트 사용자는 언락이 불가능합니다.

 

언락의 종류는 베이스 밴드에서 해당 케리어(세계 통신업체의 통신 주파수 및 기타정보) 제한을 해제한 하드웨어적 방식과(통칭 팩토리언락)과 이를 소프트웨어적으로(모뎀의 알고리즘에서 이를 해제한) 언락이 있습니다. 즉 팩토리언락 제품은 베이스밴드 업데이트가 되더라도 언락에 지장이 없습니다. 공장에서 생산될때 부터 위의 케리어 정보가 입려되지 않은 상태 이기때문입니다. 그러나 소프트웨어적으로 해제한 언락은 말이 달라집니다. 베이스 밴드 업데이트에따라 해당 케리어의 알고리즘이 변하기 때문에 이를 새로 해석하고 이에 맞는 언락툴을 마들어 내야 하기 때문입니다. 

7. 탈옥 형태별 종류 (추가)

탈옥의 형태로 보면 시스템이 작동되는 도중에 탈옥하는 툴과 펌웨어 자체를 해킹하여 이를 시스템에 업데이트하여 사용하는 방식이 있습니다.

첫번째 방식의 대표적인 Brackra1n이 있습니다. 두번째 방식의 대표적인 Pwnagtool과 같은 종류가 있습니다.

제가보기에 3.1.3 탈옥 툴은 지오핫의 Brackra1n에서 제작하지 않는다고 발표했기 때문에 나온다면 후자 방식이 되지 않을까 생각됩니다. 그러나 후자의 방식은 3.1.3 펌웨어의 디스크립(해독) 작업이 완벽히(?)끝나야 가능 하리라 생각 되어 지네요. 그러나 신규부트롬에 대한 기반 정보는 지오핫이 더 많다고 들었기에 데브팀에서 어느정도 정보가 있는지가 중요한 점이 되겠네요.

즉 ECID 백업을 못한 신규부트롬 사용자(국내 정발 KT사용자 및 09년 41주차 이후 생산 아이폰)은 3.1.3 정식툴이 나오길 기대하시는 방법밖에는 없는듯 합니다.

현재 3.1.3 탈옥이 가능한경우는 부트롬 디스크립이 끝난 구부트롬에 해당하는 버젼밖에 없습니다.


반응형