LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

Not stored file

Solved!
Go to solution

Hello Community,

Do you have an idea on how to ensure than a file wont be stored.

I need to pass a file to a DLL, (because that DLL don't belong to my project and has only this way) 

On my side it comes from a crypted file.

If you have any idea?

Best regards,

Serge

0 Kudos
Message 1 of 8
(391 Views)

Please explain yourself in more details. A file exists on the disk storage device for your computer, be it a HD or SSD or Flash memory and as such needs to exist on that medium in order for someone else (your DLL) to access it. So it will be stored on that medium in some way. I'm not sure what you mean by "making sure it is not stored" in that context.

 

Either you store it on disk and pass its file path to your DLL or you don't store it and have no file path to pass to your DLL. Unless your DLL does not also have another function that allows to pass the content of the file directly in a memory buffer, I would strongly guess that you will not be able to avoid storing that file on disk. But you could of course always delete it immediately after your DLL function returned to you and doesn't need it anymore.

Rolf Kalbermatter
My Blog
0 Kudos
Message 2 of 8
(366 Views)
Solution
Accepted by topic author Zergios26

While considering this question I was wondering if some sort of RAM disk could be used instead of a physical device and if this could satisfy the do-not-store requirement



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
Message 3 of 8
(359 Views)
Solution
Accepted by topic author Zergios26

@RobertoBozzolo wrote:

While considering this question I was wondering if some sort of RAM disk could be used instead of a physical device.


Difficult to say without more details from the OP. What DLL is he trying to pass this file too? What possibilities does this DLL offer?

Maybe it allows to pass an in memory buffer instead of a file path?

Maybe it allows to pass a file handle which could be also a pipe handle?

Maybe it has some TCP/IP server interface that can be enabled?

Maybe it allows to read the mind of the operator?

 

All very interesting questions but with the information available from the OP, completely wild guesses.

Rolf Kalbermatter
My Blog
Message 4 of 8
(355 Views)

Hello Roberto

Yes that would be great. the idea is to keep a "secret" safe. If someone as an idea on how to do that, I'm interested.

Best regards

0 Kudos
Message 5 of 8
(340 Views)
Solution
Accepted by topic author Zergios26

Hello Rolf,

The data of the file should not be accessible outside the application.

But the DLL is not given in source code and there is no other API allowing to share the data more easily.

Best regards,

Serge

0 Kudos
Message 6 of 8
(335 Views)
Solution
Accepted by topic author Zergios26

Well, even a RAM disk is accessible by other processes while it is mounted. So the whole idea to make the file more safe by storing it onto a RAM disk instead of your normal harddisk (well usually SSD nowadays) is at best "security through obscurity" by adding some extra complication step to the whole. It is not any real security by a very long stretch.

 

The best security is to keep the secret confined inside your process by passing it in a memory buffer to the DLL. If the DLL does not provide such a method, it obviously does not provide a secure way of transferring your secret to it. Trying to find some slightly more obscure way to transfer your secret to that DLL is a lot of effort and will not deter anyone from getting at it, other than the most casual and undetermined hacker out there.

Rolf Kalbermatter
My Blog
Message 7 of 8
(281 Views)

Thank you for all your responses.

 I don't think I could go further on this subject.

I will only leave the file as  less time as possible.

0 Kudos
Message 8 of 8
(258 Views)