I captured data by doing a man-in-the-middle: added a wifi AP to my PC's ethernet, and shared the real wifi connection by Windows. So all traffic goes through my PC. The I started Wireshark sessions on the ethernet interface, then replaced every https with http in the Kobo conf file. I also used Firefox extensions HttpRequester and "Modify Header Value (HTTP Headers)", and added the headers from the captured packets. This way I can get all data from the real Kobo servers, even if they are HTTPS. The only data I can't get with this method are from the URLs that I can't change to HTTP in Kobo, like mobile.kobobooks.com, this one seems to be responsible to download the books to the reader when it does a sync.
Then, when I have the captured real data, I - or someone else - can *easily* make a local webserver with the correct data format and responses. I haven't played with it since the last posts, as I didn't have much time (and my fiancée started using the eReader, didn't want to mess it up for her), but I could add my custom Bookstore entries to the Kobo device, like custom book categories, and it worked fine as far as I got.
If anyone else is interested in the reverse engineering, I would gladly share my experiences other than the above i described. The best would be to integrate it with Calibre, or maybe create a whole new "store" database software.
Edit: I also set up an apache webserver on my capture PC, and later changed all the URLs in Kobo conf to access this, and mimiced the answers of the real kobostore to get further in the data-layers.
Last edited by kido.resuri; 03-28-2017 at 03:46 PM.
|