Hex dosyasindan fuse ayarı değiştirme

Başlatan ghistmanzero, 21 Haziran 2017, 10:49:43

ghistmanzero

Merhabalar, üniversitedeyken kendi pickitim olmadığı için hocamızın yanına giderdim program yükletmek için. O zaman kullandığı mplab in bir versiyonuydu. Okuldaki lab. da bulunan set ile beraber verilen bir programdı. Neyse. Hoca hex dosyasını pice yüklemek için import edince kodun içeriği görünüyordu hexadecimal olarak. Ve orda kodda yazdığım metinler okunuyordu. Kodda lcd ekrana yazı yazmıştım. Orda hex import edilince ekranda hexadecimal sayilar arasında o da göründü. Hex den normal koda çevrim bu kadar kolay mı?
Asil sorum şu ki : ben bir hex dosyasına kod protect gibi bir fuse koyunca hex dosyasina sahip olan kişi bunu değiştirip kopyalanabilir bir şey yapabilir mi? Tek seferlik yüklenecek ve okuma ve yazmaya karşı korumalı bir hex oluşturulabilir mi? Bir tür demo hex oluşturulması mumkun mu?

kimlenbu

#1
Amaç zaten işlemciden hex kodunun çekilmesini önlemek. Senin koruduğun şey işlemcinin kod hafıza bölümü. Adam kodu çekerse ilgili işlemci için kullanılan disassembler ile kaynak koduna müdahale edebilir. Ya da çok kırık bir adamdır, direkt olarak opcode üzerinde değişiklik yapar.

Ayrıca "text" olarak basılacak çoğu şey herhangi hex editör ile kolayca görüntülenebilir.

ghistmanzero

@kimlenbu  bu durumda hex elinde ise her türlü müdahale eder :/hex içine belli bir çalıştırmadan sonra kitlenecek bir sayac+bos while kodunu düşündüm ama bu sefer de her kitlenmede tekrar hex yükler. Bu işi zorlaştırır aslında. Ticari olarak kullanması pek mümkün olmaz.

apsis

Kod koruması koyduktan eğer programı sen yükleyeceksen karşı tarafın bu kodu normal yollardan çekmesi çok zor. Normal olmayan yollardan bu kodu başkasına çektirmek isterse, yapacağı maliyete yenisini bile yazdırabilir.
Hex dosyasında dosyayı yüklediğin editör üzerinden fuse ayarlarını değiştirebilirsin.
"Makineye Beyin" MEKATRONİK

RaMu

#4
Alıntı yapılan: RaMu - 10 Haziran 2017, 21:33:50
MpLab ile asm projesini derlerken,
"CONFIG" adı geçen satır-satırlar bulunur,
kod koruması, kristal seçimi vs. bu satırda belirtilir,
"konfigürsayon bitleri, config bitleri vs." şeklinde nette aratabilirsin.


Kullandığın MCU ya göre config bitlerinin,
asm dosyasındaki yazımı değişir,
nasıl yazıldığına ise
pXxFxX.inc dosyasının içindeki tanımlardan bakabilirsin.


Ayrıca MPLAB editörde
üst kısımda bulunan "Configure" menüsünden > Configuration Bits
seçeneğini tıklayıp, açılan penceredende,
config bitlerini istediğin gibi ayarlayabilirsin.


Not olarak .hex dosyasının kendisinin korumalı olması gibi bir durum yoktur tabiki.
.hex dosyası elindeyse, asm dosyası elinde demektir,
bknz: disassembly.

https://www.picproje.org/index.php/topic,69889.msg536496.html#msg536496
Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html

ghistmanzero


coco


RaMu

Aslında öncelikle Bootloader kavramını bilmek lazım.



Kısaca MCUya yüklenen programın
kendi kendini silmesini - değiştirmesini - yazmasını engellemek için kullanılıyor.

Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html