Arctic Pride
L Plate Member
Figured this warranted its own thread since its a fairly popular topic these days.
I did some research on the GoPro Hero 5 USB-C adapter and it turns out the brick also encrypts the traffic going to the camera effectively preventing 3rd party adapters unless they spend the time to crack the encryption.
https://gethypoxic.com/blogs/technical/gopro-hero5-tear-down-and-software-study
ENCRYPTION / DRM
The surprise is the Atmel SAM D21E16 part (Australia MCU) which is used for Identify Friend or Foe Challenges and to offload some of the smarts talking to HEROBUS (GCCB Protocol) devices. It also coordinates all the USB-C PD (power delivery controller) and USBC pin muxing. When an accessory is detected by communications over CC1, authentication is done to a ATSHA204A over i2c on the TX+/TX- pins. Once authorized, D-/D+ pairs, become their appropriate functionality. VCONN also remains active. We've done a through-all analysis on this encryption, but will keep it internally.
The first devices that use the new HEROBUS are GoPro Karma, a Spherical Camera solution, a display port dongle for the Session, and the Gantry (Pro 3.5 mic adapter). The MCU's bootloader and "app" are encrypted and they've code protected the device. It appears Atmel's appnote was followed so perhaps they used the default keys of C0DE or GoProGoPro..
________________________________
I also contacted the site and they support the theory that this is done to prevent 3rd party interaction.
Hi all,
I'm hoping you can clarify
something for me with regard to the device encryption.
You note that the new USB-C adapter which allows users to run an
external mic plays a part part with the new encryption software.
Will this new encryption potentially halt 3rd party adapters or do you
believe there could be a work around for this new annoyance.
Thank you for your time
_________________________________
AFAIK, this encryption will prevent third parties from doing anything over USB-C outside of the developer program.
-Trunk
_________________________________
I did some research on the GoPro Hero 5 USB-C adapter and it turns out the brick also encrypts the traffic going to the camera effectively preventing 3rd party adapters unless they spend the time to crack the encryption.
https://gethypoxic.com/blogs/technical/gopro-hero5-tear-down-and-software-study
ENCRYPTION / DRM
The surprise is the Atmel SAM D21E16 part (Australia MCU) which is used for Identify Friend or Foe Challenges and to offload some of the smarts talking to HEROBUS (GCCB Protocol) devices. It also coordinates all the USB-C PD (power delivery controller) and USBC pin muxing. When an accessory is detected by communications over CC1, authentication is done to a ATSHA204A over i2c on the TX+/TX- pins. Once authorized, D-/D+ pairs, become their appropriate functionality. VCONN also remains active. We've done a through-all analysis on this encryption, but will keep it internally.
The first devices that use the new HEROBUS are GoPro Karma, a Spherical Camera solution, a display port dongle for the Session, and the Gantry (Pro 3.5 mic adapter). The MCU's bootloader and "app" are encrypted and they've code protected the device. It appears Atmel's appnote was followed so perhaps they used the default keys of C0DE or GoProGoPro..
________________________________
I also contacted the site and they support the theory that this is done to prevent 3rd party interaction.
Hi all,
I'm hoping you can clarify
something for me with regard to the device encryption.
You note that the new USB-C adapter which allows users to run an
external mic plays a part part with the new encryption software.
Will this new encryption potentially halt 3rd party adapters or do you
believe there could be a work around for this new annoyance.
Thank you for your time
_________________________________
AFAIK, this encryption will prevent third parties from doing anything over USB-C outside of the developer program.
-Trunk
_________________________________