Export Zinio Magazines To Pdf



  1. Zinio Usa
  2. Zinio Library Magazines
  3. Export Zinio Magazines To Pdf Editor
  4. Export Zinio Magazines To Pdf Free
  5. Free Zinio Magazines
  6. Undercover Magazine Zinio
  • Once an issue of a publication has been purchased, to download this to your computer: Install the Desktop Reader Tap on the download arrow NOTES If you wish to cancel the download, tap on.
  • I was wondering where my zinio magazines are downloaded to or stored on my playbook? I am using Files and Folders and can't find the magazines anywhere. Are they saved as PDF files or some other format? I am wanting to keep a backup of my magazines in my cloud storage if possible. Am I able to do this?
  • Jan 02, 2020 EXPORT ZINIO MAGAZINES TO PDF - I couldn't find any existing tool that could convert Zinio magazines into PDF (or any other format), so I assumed they had some complicated.

Export Zinio Magazines To Pdf Mortal Kombat Komplete Edition Crack Only Play Free 3d Parkour Games Super Mario Bros 2 Download Rom Gba Altec Lansing Acs 410 Manual Net Tools Lag Switch Download For Roblox Prahaar The Final Attack 1991 Full Movie Novel Dewasa Pdf.

Export

Download & install the AIR reader for Linux (discontinued as of today, but you can install an old version). Download & install the Zinio reader. This digital magazine offer or download page cannot be found”? . .. You may change your email permissions anytime by clicking in the “Account Settings”. Does anyone know how I can print Zinio magazines that are protected from printing? I want to make them into pdf so I can read anywhere.

Author:Zum Nikoshakar
Country:Dominica
Language:English (Spanish)
Genre:Personal Growth
Published (Last):25 January 2016
Pages:129
PDF File Size:5.13 Mb
ePub File Size:9.16 Mb
ISBN:584-4-47841-491-5
Downloads:82500
Price:Free* [*Free Regsitration Required]
Uploader:Kigajora

There are a lot of mwgazines here, and all of them are required. Does anyone know how I can print Zinio magazines that are protected from printing?

Removing Zinio DRM

It turns out they are static jagazines initialized in ZinioReaderWin8. OK start reading here I usually start with reversing the network API, but this time I changed the process and started with decompiling the app first, because trying to decrypt the files is way more fun. Thread starter EddieLowmax Start date Mar 10, Using EverythingI quickly found the folder containing the issue I just downloaded: Decompiling Zinio app I usually start with reversing the network API, but this time I changed the process and started with decompiling the app first, because trying to decrypt the files is way more fun.

EddieLowmax New Member Mar 11, The question is primarily about converting to an open format which this answer unfortunately doesn’t seem to address, unless I am missing something?

Printing Zinio Magazines | MyBroadband

Someone sent me an email a few weeks ago asking me if my Future plc downloader could also download Zinio magazines. The search returned only a few results, zinioo one of them was this function in the ZinioReaderWin8. Joined Nov 18, Messages 27, Joined Jan 17, Messages 9. Post Your Answer Discard By clicking “Post Your Answer”, you acknowledge that you have read our updated terms of serviceprivacy policy and cookie policyand that your continued use of the website is subject to these policies.

Zinio Usa

But I would like to have an electronic archive of the magazines.

Zinio Library Magazines

Home Questions Tags Users Unanswered. You will have to register with an e-mail. NET Native and can be trivially decompiled. Each page apparently had an useless annotation containing the page number.

I tried to open one of the files, but I got the result I expected: Descendants “trackingCode” ; if source.

Is that not illegal advice that you’re asking for? Here are the most important lines of the ParsePackingList function:.

Free sample magazines maagazines be obtained here. I know this comes quite late, but anyway: Thanks Bwana I’m thinking of going in that direction.

Export Zinio Magazines To Pdf

EddieLowmax New Member Mar 10, The reader can be downloaded here.

linux – How to convert downloaded Zinio publications to an open format? – Super User

AddPage page if err! Just crack the copy protection?

That was all I needed covnert the hoa application. For a better experience, please enable JavaScript in your browser before proceeding. Now I’m considering renewing the subscription and looking at other interesting publications they may have, but that’s conditional to the following?

Items 1 and 2 got a thumbs up already. The offline Linux reader, from what I can see, even works as well as the Windows one. I want to make them into pdf so I can read anywhere. Annotations were gone and my application was complete.

But what about the remaining parameters, deviceId and uuid? Forums New posts Search forums. After opening the generated PDF file, I noticed an ugly blue square at the upper-left corner of each page:. By clicking “Post Your Answer”, you acknowledge that you have read our updated terms of serviceprivacy policy and cookie policyand that your continued use of the website is subject to these policies. Joined Mar 17, MessagesDecrypt keydataiv ; return CryptographicBuffer.

Obviously, by trying each available method until the program compiles!

Printing Zinio Magazines

How do I do that? That worried me a little, because if the password was same for all the magazines, my program would allow users to download every available magazine for free, which was not my goal. By using our site, you acknowledge that you have read and understand our Cookie PolicyPrivacy Policyand our Terms of Service.

TOP Related Articles

Someone sent me an email a few weeks ago asking me if myFuture plc downloadercould also download Zinio magazines. I had no idea what Zinio is, so Ivisited their website to learn more about theirplatform. They call themselves “The World’s Largest Newsstand” and offerover 5500 magazines (including all of theFuture plc magazines).Such a huge number of magazines instantly made them into a potential targetfor a DRM removal tool. I couldn’t find any existing tool that could convertZinio magazines into PDF (or any other format), so I assumed they had somecomplicated DRM scheme. Initially, I was not interested in breaking it, butI kept the idea in the back of my mind anyway. One day I had a few hoursto spare and decided to give it a try.

Initial investigation

Zinio magazine app

If you search the internet for “Zinio PDF conversion”, one of the first resultswill be a page from the Zinio help center. The entry is calledZinio PDF Filesand it says the following:

Zinio does not provide publication files in PDF format.Your digital edition can be downloaded and saved in aformat optimized for a rich reading experience providedby the Zinio Reader software.

I’m all for a rich reading experience! Well, if they say the don’t providemagazines in PDF format, then it must be true. Or maybe not? It was easy toverify their claims. I created an account, purchased one magazine and downloadedtheir Windows desktop app from Microsoft Store. UsingEverything, I quickly found the folder containingthe issue I just downloaded:

To my eye, that sure looks an awful lot like a bunch of PDF files—Zinio app isyet another glorified PDF reader after all. I tried to open one of the files,but I got the result I expected: encrypted PDF files, we meet again!

Decompiling Zinio app

I usually start with reversing the network API, but this time I changed theprocess and started with decompiling the app first, because trying to decryptthe files is way more fun. Zinioapp targetsboth Windows 8.1 and Windows 10, which means it’s not compiled using .NETNative and can be trivially decompiled. This time I useddnSpy, which is my new favorite toolfor decompiling .NET applications (it’s lightning fast and has great searchcapabilities, among many other great features). I loaded the Zinio app assemblyand searched for “password”. The search returned only a few results, and one ofthem was this function in the ZinioReaderWin8.Util.CryptoUtils class:

This looked like it would be a very quick game over for Zinio. Thisfunction tells us that the PDF password is encrypted withAES-CBCusing the 128-bit key derived from parameters called deviceId and uuid(initialization vector is passed via cipher parameter). But where areall these parameters coming from? GetPdfPassword is called only fromIssueDataHelper.DecryptPdfPassword, and DecryptPdfPassword is calledonly from ZinioReaderWin8.Services.IssueDataHelper.ParsePackingList.Here are the most important lines of the ParsePackingList function:

This code loads the XML node called trackingCode from some larger XML document,and extracts the IV and the ciphertext from it. My assumption was that the XMLwas received over the network when the user logs in or asks for magazine’smetadata. But what about the remaining parameters, deviceIdand uuid? It turns out they are static values initialized inZinioReaderWin8.SettingManager.InitDefaultSettings function:

That was all I needed from the decompiled application. I had analgorithm for deriving the PDF password, so all that was left wasto reverse the API.

Reversing the API

This part of the process was straightforward. Zinio API is super simple,with only three interesting requests: authenticateUser, libraryService,and issueData. Each request and response are self-contained XML documents,without custom HTTP status codes and headers; that made my job even simpler.The API doesn’t even use cookies or authentication tokens: email and passwordare stored on the client and sent with each request (that means theauthenticateUser request is completely redundant, but it still existsfor some reason). The client calls the libraryService to download the listof all purchased issues, and then issueData is called for each of them inorder to retrieve all the data necessary to download it. Here is how issueDatarequest looks in practice:

There are a lot of parameters here, and all of them are required. Login andpassword don’t need an explanation. deviceId and installationUUID areneeded because server has to generate an AES key from them.applicationName is required for the reason I’ll explain later, and the othersare required for no apparent reason. The server responds to this request withthe following response:

Export Zinio Magazines To Pdf Editor

Remember the XML document containing the encrypted PDF password? This is it. It alsocontains the hostName and issueAssetDir; when combined, they give us thefolder where PDF pages are located. I was slightly surprised when I foundout that the PDF files don’t require any authentication. That worried me a little,because if the password was same for all the magazines, my program would allow usersto download every available magazine for free, which was not my goal. Fortunately,I discovered later that each magazine issue has unique and randomly generated 128-bitPDF password (at least I hope it’s randomly generated—it could also be an MD5 hashof something).

Now I had all the parameters needed to determine the PDF password, but the code thatI wrote didn’t work as expected. Decrypted PDF password was not a human-readable string, whichdidn’t look right. Server was also generating different IV each time, but that shouldhave affected only the ciphertext—password should have been the same each time. Thatwas not the case when I ran my code: decrypted password was different every time. Thereare only three parameters used in AES-CBC decryption: the key, the initialization vectorand the ciphertext. That meant my decryption key was wrong. I compared my implementationwith the original C# code multiple times, but couldn’t find anything wrong in my code.

Finally, after dozens of unsuccessful attempts, an idea came to my mind: what if thekey derivation is platform dependent? Maybe the problem was that I decompiled the .NET desktop version of the app,but reversed the API using the iOS app (I have Windows only in virtual machine, so I tryto use it only when necessary)? After replacing “Zinio iReader” with the “ZinioWin8”in the applicationName parameter, everything was working: decryption resulted in anice 32-byte hex-encoded string! Few more hours of coding and my application coulddownload, decrypt and merge individual files into a single PDF.

Removing annotations

After opening the generated PDF file, I noticed an ugly blue square at the upper-leftcorner of each page:

Each page apparently had an useless annotation containing the page number. You mightremember that I had similar problem with annotationsbefore),but this time they were much more obtrusive; I had to find a way to remove them.

Export Zinio Magazines To Pdf Free

As I mentioned previously, I’m using UniDoc fordecrypting and merging individual PDF pages. I was hoping that the library couldalso remove annotations. Examples section on their website didn’t have what Ineeded. Unfortunately, their API documentationis next to useless: most of the functions didn’t have any documentation at all, which is a shame,because the library itself is really useful. I started looking for any type or functionthat looked like it could have anything to do with annotations.

I discovered an interesting type called PdfObjectDictionary. PDF file itself is acollection of objects, so there might be a way to find annotations by name andset their values to null or something like that? PdfPage type has GetPageDictmethod that returns PdfObjectDictionary, so I thought I was on to something.But my editor didn’t find GetPageDict method. What was going on? Here is thecode for reading the decrypted PDF page and adding it to a final PDF:

Free Zinio Magazines

Documentation for GetPage says it returns PdfObject, not PdfPage, but thereis another function called GetPageAsPdfPage that actually returns PdfPage.Well, that is a very confusing API, but let’s try it. Now AddPage callcouldn’t compile, because it only accepts a PdfObject and not a PdfPage.How to get the PdfObject out of the PdfPage? Obviously, by trying each availablemethod until the program compiles! Calling GetPageAsIndirectObject did the job,whatever indirect object was. I started looking throughautocompletion suggestions and found a field called Annots. Let’s set it tonull! My final code looked like this:

Undercover Magazine Zinio

Success! Annotations were gone and my application was complete. Youcan download it here.





Comments are closed.