Thồng tin về dm-verity, DRK (Device Root Key), fix bootloop - Cách build kernel Root Android 6.0.1

Fix logo stuck, bootloop, Device does not have DRK, Please install DRK first... ; dm-verity verification failed.... Need to check DRK first... for Galaxy S6, Galaxy S6 edge, Galaxy S6 edge+, Galaxy Note 5

Fix DRK Samsung Galaxy S6-S6edge_Galaxy-Note5.png

Device-mapper-verity(dm-verity)
Fix bootloop, DRK(Device Root Key)
Galaxy S6, S6e, S6e+ & Note 5

Giới thiệu

Trong bài viết này mình sẽ chia sẻ những gì mình tìm hiểu được về Device-mapper-verity(dm-verity), DRK(Device Root Key), cách fix lỗi bootloop, treo logo, Root Android 5.1.1 và Root Android 6
Bạn lên chịu khó đọc hết những gì mình viết vì nó không lãng phí thời gian của bạn đâu, đọc xong bài này bạn sẽ biết cơ bản về Device-mapper-verity(dm-verity), DRK(Device Root Key), biết các cách tự fix lỗi bootloop, treo logo, Root Android 5.1.1 và Root Android 6.0.1 cho máy của bạn!

Về Device-mapper-verity (dm-verity) ?

Từ các bản Android 5.1.1 trở lên và hiện tại là Android 6.0.1 thì Samsung đã tăng cường mạnh mẽ các cơ chế bảo mật cho các thiết bị của hàng, đặc biệt chức năng Device-mapper-verity (dm-verity) bên trong Kernel - Kiểm tra block devices, giúp ngăn các các Rootkit, bảo toàn tính nguyên vẹn của các phân vùng hệ thống. Thiết bị chỉ có thể khởi động khi toàn bộ phần vùng hệ thống còn nguyên vẹn, chưa bị can thiệp!
dm-verity-hash-table.png 
Hiểu đơn giản nó hoạt động như sau, khi thiết bị bất đầu khởi động Kernel sẽ tiến hành kiểm tra các phần vùng hệ thống như system, efs,... nếu các phân vùng này đã bị can thiệp sửa đổi (Root, xóa, chỉnh sửa,... ) Kernel sẽ dừng việc khởi động chính là tính trang bị treo logo hay bootloop và ngược lại các phần vùng còn nguyên vẹn thì sẽ tiếp tục khợi động và mở thiết bị hoạt động bình thường.
Nếu bạn quan tâm về vấn đề này có thể tham thảo thêm tại link bên dưới, mình cũng chưa hiểu hết về cái cái dm-verity này, mọi người biết thì chia sẻ cũng tìm hiểu nhé!


Tạm hiểu thế đã, dưới đây mình sẽ nói tiếp về các nguyên nhận gậy lỗi treo logo, bootloop và các khắc phục!

Các nguyên nhân gây lỗi bootloop, treo logo Samsung ?

Bạn đọc xong phần trên chắc cũng hiểu rồi, các phẫn vùng hệ thống nếu không còn nguyên vẹn sẽ không boot > treo logo, bootloop!
Vậy phân vùng hệ thống là phân vùng nào?
  • SYSTEM: Chứa hệ điều hành (OS), ở đây là Android OS
  • EFS: Chưa DRK-Devices Root Key, IMEI, S/N, MAC address,...
System-Efs-GalaxyS6.jpg 
Bên trong system và efs của Galaxy S6 - Xem bằng Root Explorer

Những gì làm mất sự nguyên vẹn của phân vùng hệ thống?
  1. Root máy (can thiệp vào system)
  2. Chình sửa, xóa, chép dữ liệu,... vào system
  3. Mất DRK-Device Root Key trong efs
Thêm về DRK-Device Root Key
Máy bị mất DRK khi vào Recovery sẽ hiện "Device does not have DRK, Please install DRK first..." hoặc "Need to check DRK first..."
[​IMG]
Nói thật mình cũng chưa hiểu hết về nó ? Mình biết về cơ bản nó là một thành phần quan trọng lằm trong phân vùng efs và nếu bị mất DRK máy sẽ thể khởi động! và mình biết các fix nó, còn các chi tiết và thông tin về nó mình vẫn đang tìm hiểu thêm, sẽ cập nhật sau...
Còn nữa là tại sao bị mất DRK ? DRK lằm trong phân vùng EFS, việc DRK bị mất có 2 nguyên nhân:

  1. Việc DRK bị mất cũng nhữ cách IMEI bị mất, do Root máy nghịch chình sửa linh tinh,... unlock bị lỗi >>> nói chung là càn thiệp vào phân vùng EFS chính sửa linh tinh làm mất DRK
  2. Là do mặc định máy bạn đã không có rồi! :D tại sao zậy? Tại vì khả năng máy của bạn là máy nhảy (tức những máy ra khỏi nhà máy không chính thống, bị trôm ra ngoài bán), nó xuất xưởng không chính thức nên Samsung cũng chưa có chính thức cấp DRK-Device Root Key cho nó ! :D

- dm-verity sẽ kiểm tra theo từng block của phân vùng nên bạn có thay đổi chỉ một bit cũng đã là thay đổi/can thiệt làm mất sự nguyên vẹn của phân vùng rồi nhé!

Nguyên nhân hậu quả cũng đã biết, giờ đến cách khắc phục hậu quả:

Hướng dẫn fix treo logo, bootloop, fix DRK không Root cho các máy Samsung Android 5.1.1 và Android 6.0.1: Post #2

Hướng dẫn Root Android 5.1.1, Root Android 6, fix treo logo, bootloop: Post 3

Cuối cùng là một vài lưu ý quan trọng !!!

Hướng dẫn fix treo logo, bootloop
Samsung Android 5.1.1 và Android 6.0.1


# Đầu tiên là với các máy chưa Root, nhưng đã bị can thiệp chỉnh sửa system hay bị mấy DRK-Device Root Key trong efs (trưởng hợp này nói chung là đang ở Custom Rom không Root, hoặc lỗi mất DRK):
Mình bỏ qua phần mình tìm ra cách fix như nào vì khá dài dòng lan man :D. Sẽ giải thích cho các bạn cách làm luôn!
- Để fix thì cần tắt cài dm-verity đi cho nó khỏi xác minh, check các phân vùng. Nếu system không bị lỗi gì dụ đã chĩnh sửa Kernel vẫn boot bình thường
- Vậy tắt dm-verity như nào ? dm-verity lằm trong Kernel lên ta phải sửa lại Kernel để tắt nó, thức ra mình cũng đã có bài hướng dẫn cách sửa từ hồi mới ra Android 5.1.1 TẠI ĐÂY những mình sẽ trích lại trong bài này luôn cho các bạn đỡ phải tìm :D


Tải file sau về và giải nén ra, bên trong có các công cần thiết: http://www.fshare.vn/file/O47F8N93DA13
- Lấy file Kernel (boot.img) từ file Rom gốc .tar.md5 (mở file .tar.md5 bằng WinRAR hoặc 7-zip, kéo lấy file boot.img ra ngoài)
[​IMG]



- Copy file boot.img sang thư mục Android Image Kitchen

- Kéo thả file mở file boot.img bằng file
 unpackimg.bat

[​IMG]
[​IMG]

- Sau đó sẽ được 2 thư mục là ramdisk và split_img, mở thư mục ramdisk

- Mở các file có tên như sau fstab.xxx bằng 
Notepad++ (trong đó xxx sẽ thay đổi theo từng dòng máy, trong bài này mình thực hiện có Kernel S6 có 2 file là fstab.samsungexynos7420 và fstab.samsungexynos7420.fwup)

- Tìm các dòng dạng như sau (xxx sẽ thay đổi tùy theo từng dòng máy):
Mã:
/dev/block/platform/xxx/by-name/SYSTEM /system ext4 ro,errors=panic,noload wait,support_scfs,verify


hoặc

/dev/block/platform/xxx/by-name/system /system ext4 ro,errors=panic,noload wait,support_scfs,verify
[​IMG]

xóa 
,support_scfs,verify đi, nói chung chỉ để wait thôi (chú ý chỉ sửa dòng có system thôi nhé). Sẽ thành như sau:
Mã:
/dev/block/platform/xxx/by-name/SYSTEM /system ext4 ro,errors=panic,noload wait


hoặc

/dev/block/platform/xxx/by-name/system /system ext4 ro,errors=panic,noload wait
[​IMG]

-Sửa xong save lại. Quay lại thư mục trước và chạy file 
repackimg.bat để build Kernel mới!
[​IMG]

- File 
image-new.img chính là file Kernel mới vừa build được, copy nó ra ngoài thư mục gốc nằm cùng file img2tar.exe (để build thành file .tar flash qua Odin)

- Đổi tên file
 image-new.img thành boot.img, chạy file img2tar.exe nhấn vào CHOOSE FILE chọn fileboot.img nhấn Open
[​IMG]


- Điền tên file vào ổ trắng ngang hàng với nút 
CHOOSE FILE
[​IMG]

-Rồi nhấn
 BUILD .TAR, đợi một lúc sẽ build xong!
Sau đó flash file Kernel vừa build mới qua Odin là máy bạn sẽ khởi động ngay. Thật vi diệu ! :D


# Trường hợp tiếp theo là fix treo logo, bootloop các máy có Root
Hướng dẫn Root Android 5.1.1, Root Android 6, fix treo logo, bootloop: Post 3


Nguồn: http://choimobile.vn/threads/thong-tin-ve-dm-verity-drk-device-root-key-fix-bootloop-cach-build-kernel-root-android-6-0-1.64729/

Các bạn ở hà nội bị lỗi này có thể liên hệ bên mình để fix lỗi nhe với giá cả hợp lý nhất nhé:

Liên hệ dịch vụ:
Đoàn Up Rom 70k - 01667.67.1932 (Call, SMS, Viber, Zalo)
Skype: doanuprom
https://www.facebook.com/upromandroidiphone



Đăng nhận xét

Mới hơn Cũ hơn