Navutilus Object Squeeze v1.03 DEMO

AdministratorAdministrator Member, Moderator, Administrator Posts: 2,500
edited 2014-03-21 in Download section
Navutilus Object Squeeze DEMO
Optimize (Squeeze) Navision objects. Make them impenetrable & small. Protect source code.

Navutilus Object Squeeze can be useful for:
- Protected demo-version creation
- Protection of your active database objects from unintentional or/and unauthorized modifications
- Protection of the crucial/complex objects against unreasonable modifications
- Know-how protection ( e.g. by "hiding" it between the functions of some codeunits)

We thoroughly tested the squeeze-technology with all recent Microsoft Dynamics NAV versions.
The majority of Navutilus objects are squeezed.

Technical Spec

Release: 1.00
Release date: 16-September-2009
Microsoft Dynamics NAV Version: 4.xx, 5.xx, 2009
Microsoft Dynamics NAV Database: Native, MS SQL

Content Spec: 2 tables, 3 forms, 2 codeunits

Product Spec

- Squeezes any objects with Navision license permissions to read and modify
- Squeezes really large objects
- Replaces Source Code with text Option
- Replaces Locals' Names with text Option
- Replaces Documentation trigger with text Option
- Replaces Source triggers with text Option
- Stores and Maintains Squeeze Sets of Objects
- Squeezed object types: Tables, Form, Reports, Dataports, XMLports, Codeunits
- Makes Objects smaller (by up to 50%)

http://www.mibuso.com/dlinfo.asp?FileID=1162

Discuss this download here.

Comments

  • rdebathrdebath Member Posts: 383
    Does this work with NAV 2009 RTC and web services ?
  • JuliusJulius Member Posts: 2
    rdebath wrote:
    Does this work with NAV 2009 RTC and web services ?

    Not yet :(
  • David_SingletonDavid_Singleton Member Posts: 5,479
    The partner contract with Microsoft specifically states that any reverse engineering of Microsoft code is a breach of contract, making this code clearly illegal. As such this should be removed from the site.


    On top of this I would like to warn all Navision end users. Make certain in you contract with your partner to have a clear clause that makes certain that your partner will never use BLACKMAILING code like this to force you to never be able to change partners. Be very aware that if your partner locks code using tools like this, that they can then charge you anything they want for support, since there is no way you can ever go to another partner for support.

    Partners that lock objects using illegal hacks like this should not be supporting customers. If your partner is using techniques like this to lock you ito them, the name and shame to protect other customers.

    One of the strengths of Navision has always been its openness. Once we start to lock code and prevent customers to be able to get support we revert to the dark ages.

    PLEASE do not support this company. And do not ever purchase Add-Ons that have been encrypted using such tools.

    :thumbsdown:
    David Singleton
  • rdebathrdebath Member Posts: 383
    Julius wrote:
    rdebath wrote:
    Does this work with NAV 2009 RTC and web services ?

    Not yet :(
    Um, that implies that you will be making it work. If it's not working now, doesn't it make this one of those tools where you delete the source code from the object and just leave the "p-code"? The source code that's converted into C# for the service tier? Making it impossible to run on the service tier without providing the source code that you're trying to "protect" in the first place?

    :mrgreen:
  • rdebathrdebath Member Posts: 383
    The partner contract with Microsoft specifically states that any reverse engineering of Microsoft code is a breach of contract, making this code clearly illegal. As such this should be removed from the site.

    Except, David, in many countries that clause is either illegal or could very easily be found to be "unreasonable" or to not apply to working out how Navision objects are compiled. The reasoning behind the latter point is that at no point are you taking object code that you have to create the original source that you don't. (the definition of 'reverse engineering' in this case) This is especially true as this is a 'dictated' contract where the 'partner' has basically no chance to disagree any specific terms.

    In addition, even if the contact term is valid it doesn't make the code "illegal" it just makes the production of it a "breach of contract" for someone who's currently signed as a partner. NB Please don't try to switch to EULAs, in most places they're a smelly joke.

    Other than that I agree with you David, when any partner or addin maker uses this stuff you have to wonder what they're hiding, or why they don't trust you to abide by your contract with them or even copyright law. Or maybe the code they're hiding is so bad even they are embarrassed by it; and when they add extra license keys too ...
    makes you wonder.

    It also makes you remember you don't have a 'reverse engineering' contract with them, or at least your mate down the road doesn't.
  • AdministratorAdministrator Member, Moderator, Administrator Posts: 2,500
    Navutilus Object Squeeze DEMO
    Optimize (Squeeze) Navision objects. Make them impenetrable & small. Protect source code.

    Demo restrictions:
    - Only object IDs 1-100 are processing

    Navutilus Object Squeeze can be useful for:
    - Protected demo-version creation
    - Protection of your active database objects from unintentional or/and unauthorized modifications
    - Protection of the crucial/complex objects against unreasonable modifications
    - Know-how protection ( e.g. by "hiding" it between the functions of some codeunits)

    We thoroughly tested the squeeze-technology with all recent Microsoft Dynamics NAV versions.
    The majority of Navutilus objects are squeezed.

    Technical Spec

    Release: 1.00
    Release date: 16-September-2009
    Microsoft Dynamics NAV Version: 4.xx, 5.xx, 2009
    Microsoft Dynamics NAV Database: Native, MS SQL

    Content Spec: 2 tables, 3 forms, 2 codeunits

    Product Spec

    - Squeezes any objects with Navision license permissions to read and modify
    - Squeezes really large objects
    - Replaces Source Code with text Option
    - Replaces Locals' Names with text Option
    - Replaces Documentation trigger with text Option
    - Replaces Source triggers with text Option
    - Stores and Maintains Squeeze Sets of Objects
    - Squeezed object types: Tables, Form, Reports, Dataports, XMLports, Codeunits
    - Makes Objects smaller (by up to 50%)

    http://www.mibuso.com/dlinfo.asp?FileID=1162

    Discuss this download here.
  • OldSchoolOldSchool Member Posts: 8
    The partner contract with Microsoft specifically states that any reverse engineering of Microsoft code is a breach of contract, making this code clearly illegal. As such this should be removed from the site.
    It is really severe charge... You can prove it?
    ]On top of this I would like to warn all Navision end users.
    It's addressed to me (among others), I suppose :)
    Make certain in you contract with your partner to have a clear clause that makes certain that your partner will never use BLACKMAILING code like this
    Why BLACKMAILING?! What do you mean - suspiction, that they torture their customers, persuading them to buy their products and then...
    force them to never be able to change partners.
    You meant that? Why I can not change partners because of slight utility (as I understand, this is the case) code missing? And if I receive a proposition with totally closed code as a firm condition, why should I agree, if I don't like it?
    I seriously doubt that partners are interested in total code closure - it would be very weak move in competitive environment... And what would be the purpose of that total closure? It would have to be well justified - otherwise one could ruin management of the project, I think...
    lock objects using illegal hacks like this
    Do You really have an evidence? Are You really able to prove? Then do it - without that kind of emotions...
    One of the strengths of Navision has always been its openness.
    Oh, yes! I'd been eating that kind of stuff almost for 9 years... Unfortunately, it isn't that open - You know it quite well, I suppose...
    Once we start to lock code and prevent customers to be able to get support we revert to the dark ages.
    Exactly. You're absolutely right. I can add only this: we are still living there! Look: do You really want to state, that source code openness is enough for considerable freedom of choice for us? And what about proper level of partner expertise, needed for secure partner change? What about proper programming discipline, what about various methodologies (used by various partners)... and so on? There's no even a smell of perfect competition in this industry, You know it quite well, I suppose... So it is not the code openness that rules - standards (including those of partners' competence) much more important!

    I went through partner change with highly customised solution (large one!) in my hands... It was not a real pleasure, I can assure You! "You have all C/AL codes on hand, what are your problems? - Won't you read all those thousands lines by yourself? Do you really think we can read/understand this so easily? It is not the way we do our programming..." - and I understand them - they were different...

    As for code openness as MS Partner's duty - let me remind You, that it is not only "dark age" we are living through, but also age of intellectual property protection. And I perfectly understand those professionals, that (like myself - in my area) concerned about copyrights, trademark protection etc. As for software - there's a vast range of restrictions - from GNU GPL and OSI to Adobe, Autodesk and IBM, and... One can choose his own style to his one taste :)

    Regards
  • DenSterDenSter Member Posts: 8,307
    <removed> not worth it </removed>
  • AdministratorAdministrator Member, Moderator, Administrator Posts: 2,500
    Navutilus Object Squeeze DEMO
    Optimize (Squeeze) Navision objects. Make them impenetrable & small. Protect source code.

    ATTENTION!

    Demo restrictions:
    - only object IDs 1-100 are processing
    - only 4 first function triggers are processing
    - "Erase Locals' Names" function is not accessible

    The utility won't process the object without license permissions to read and modify.

    PLEASE DO NOT FORGET TO BACKUP YOUR OBJECTS BEFORE PROCESSING THEM.

    Navutilus Object Squeeze can be useful for:
    - Protected demo-version creation
    - Protection of your active database objects from unintentional or/and unauthorized modifications
    - Protection of the crucial/complex objects against unreasonable modifications
    - Know-how protection ( e.g. by "hiding" it between the functions of some codeunits)

    We thoroughly tested the squeeze-technology with all recent Microsoft Dynamics NAV versions.
    The majority of Navutilus objects are squeezed.

    Technical Spec

    Release: 1.00
    Release date: 16-September-2009
    Microsoft Dynamics NAV Version: 4.xx, 5.xx, 2009
    Microsoft Dynamics NAV Database: Native, MS SQL

    Content Spec: 2 tables, 3 forms, 2 codeunits

    Product Spec

    - Squeezes any objects with Navision license permissions to read and modify
    - Squeezes really large objects
    - Replaces Source Code with text Option
    - Replaces Locals' Names with text Option
    - Replaces Documentation trigger with text Option
    - Replaces Source triggers with text Option
    - Stores and Maintains Squeeze Sets of Objects
    - Squeezed object types: Tables, Form, Reports, Dataports, XMLports, Codeunits
    - Makes Objects smaller (by up to 50%)

    http://www.mibuso.com/dlinfo.asp?FileID=1162

    Discuss this download here.
  • BeliasBelias Member Posts: 2,998
    absolutely :thumbsdown:
    -Mirko-
    "Never memorize what you can easily find in a book".....Or Mibuso
    My Blog
  • hxrhxr Member Posts: 20
    HI,

    Just interesting,
    Can anybody tell me how object squeeze is done?
    They change text of object code to bytes?
    And import it in “Blob Reference” field of Object table?

    But how only several functions not all object are squeezed?
    And instead of code in triggers there is only “ www.blabla.com “?

    I just want to know a little bit more about such a possibility. Is any special structure, how Navision understands it?

    Thank you.
  • AdministratorAdministrator Member, Moderator, Administrator Posts: 2,500
    Navutilus Object Squeeze v1.02 DEMO
    Optimize (Squeeze) Navision objects. Make them impenetrable & small. Protect source code.

    ATTENTION!

    Demo restrictions:
    - only object IDs 1-100 are processing

    The utility won't process the object without license permissions to read and modify.

    PLEASE DO NOT FORGET TO BACKUP YOUR OBJECTS BEFORE PROCESSING THEM.

    Version 1.02 new:
    - Erase Globals' Names with text Option
    - Erase Functions' Names with text Option

    Navutilus Object Squeeze can be useful for:
    - Protected demo-version creation
    - Protection of your active database objects from unintentional or/and unauthorized modifications
    - Protection of the crucial/complex objects against unreasonable modifications
    - Know-how protection ( e.g. by "hiding" it between the functions of some codeunits)

    We thoroughly tested the squeeze-technology with all recent Microsoft Dynamics NAV versions.
    The majority of Navutilus objects are squeezed.

    Technical Spec

    Release: 1.02
    Release date: 05-February-2010
    Microsoft Dynamics NAV Version: 4.xx, 5.xx, 2009
    Microsoft Dynamics NAV Database: Native, MS SQL

    Content Spec: 2 tables, 3 forms, 2 codeunits

    Product Spec

    - Squeezes any objects with Navision license permissions to read and modify
    - Squeezes really large objects
    - Replaces Source Code with text Option
    - Replaces Locals' Names with text Option
    - Replaces Documentation trigger with text Option
    - Replaces Source triggers with text Option
    - Stores and Maintains Squeeze Sets of Objects
    - Squeezed object types: Tables, Form, Reports, Dataports, XMLports, Codeunits
    - Makes Objects smaller (by up to 50%)

    http://www.mibuso.com/dlinfo.asp?FileID=1162

    Discuss this download here.
  • AdministratorAdministrator Member, Moderator, Administrator Posts: 2,500
    Navutilus Object Squeeze v1.02 DEMO
    Optimize (Squeeze) Navision objects. Make them impenetrable & small. Protect source code.

    ATTENTION!

    Demo restrictions:
    - only object IDs 1-100 are processing

    The utility won't process the object without license permissions to read and modify.

    PLEASE DO NOT FORGET TO BACKUP YOUR OBJECTS BEFORE PROCESSING THEM.

    Version 1.02 new:
    - Erase Globals' Names Option
    - Erase Functions' Names Option

    Navutilus Object Squeeze can be useful for:
    - Protected demo-version creation
    - Protection of your active database objects from unintentional or/and unauthorized modifications
    - Protection of the crucial/complex objects against unreasonable modifications
    - Know-how protection ( e.g. by "hiding" it between the functions of some codeunits)

    We thoroughly tested the squeeze-technology with all recent Microsoft Dynamics NAV versions.
    The majority of Navutilus objects are squeezed.

    Technical Spec

    Release: 1.02
    Release date: 05-February-2010
    Microsoft Dynamics NAV Version: 4.xx, 5.xx, 2009
    Microsoft Dynamics NAV Database: Native, MS SQL

    Content Spec: 2 tables, 3 forms, 2 codeunits

    Product Spec

    - Squeezes any objects with Navision license permissions to read and modify
    - Squeezes really large objects
    - Erases Locals' Names
    - Erases Globals' Names
    - Erases Functions' Names
    - Replaces Documentation trigger with text
    - Replaces Source triggers with text
    - Stores and Maintains Squeeze Sets of Objects
    - Squeezed object types: Tables, Form, Reports, Dataports, XMLports, Codeunits
    - Makes Objects smaller (by up to 50%)

    http://www.mibuso.com/dlinfo.asp?FileID=1162

    Discuss this download here.
  • AdministratorAdministrator Member, Moderator, Administrator Posts: 2,500
    Navutilus Object Squeeze v1.03 DEMO
    Optimize (Squeeze) Navision objects. Make them impenetrable & small. Protect source code.

    ATTENTION!

    Demo restrictions:
    - only object IDs 1-100 are processing

    The utility won't process the object without license permissions to read and modify.

    PLEASE DO NOT FORGET TO BACKUP YOUR OBJECTS BEFORE PROCESSING THEM.

    Version 1.03 new:
    - Temporary tables squeeze problem solved

    Version 1.02 new:
    - Erase Globals' Names Option
    - Erase Functions' Names Option

    Navutilus Object Squeeze can be useful for:
    - Protected demo-version creation
    - Protection of your active database objects from unintentional or/and unauthorized modifications
    - Protection of the crucial/complex objects against unreasonable modifications
    - Know-how protection ( e.g. by "hiding" it between the functions of some codeunits)

    We thoroughly tested the squeeze-technology with all recent Microsoft Dynamics NAV versions.
    The majority of Navutilus objects are squeezed.

    Technical Spec

    Release: 1.03
    Release date: 14-April-2011
    Microsoft Dynamics NAV Version: 4.xx, 5.xx, 2009
    Microsoft Dynamics NAV Database: Native, MS SQL

    Content Spec: 2 tables, 3 forms, 2 codeunits

    Product Spec

    - Squeezes any objects with Navision license permissions to read and modify
    - Squeezes really large objects
    - Erases Locals' Names
    - Erases Globals' Names
    - Erases Functions' Names
    - Replaces Documentation trigger with text
    - Replaces Source triggers with text
    - Stores and Maintains Squeeze Sets of Objects
    - Squeezed object types: Tables, Form, Reports, Dataports, XMLports, Codeunits
    - Makes Objects smaller (by up to 50%)

    http://www.mibuso.com/dlinfo.asp?FileID=1162

    Discuss this download here.
  • einsTeIn.NETeinsTeIn.NET Member Posts: 1,050
    hxr wrote:
    HI,

    Just interesting,
    Can anybody tell me how object squeeze is done?
    They change text of object code to bytes?
    And import it in “Blob Reference” field of Object table?

    But how only several functions not all object are squeezed?
    And instead of code in triggers there is only “ http://www.blabla.com “?

    I just want to know a little bit more about such a possibility. Is any special structure, how Navision understands it?

    Thank you.
    I THINK... but I'm not entirely sure... NAV stores all objects in some kind of compiled format. Within this compiled format there's one section where the object's functionality (assembler, bits and bytes) is stored and another section where the source code (in text format) is stored. I think they found a way to replace the source code section without corrupting the rest of the object.

    I see two sides of the coin. On the one hand this is a way to protect your source code, on the other hand your objects will be irreversible changed. This is a big danger.

    (I don't know enough about Microsoft's contracts to decide if David's post is also an issue. But as far as I know David he's one of the best NAV specialists in the world, so I would trust his word.)
    "Money is likewise the greatest chance and the greatest scourge of mankind."
  • mdPartnerNLmdPartnerNL Member Posts: 802
    Protecting our code is allowed. It's the same with protecting your c# code. You can protect this by using a obfuscation tool.

    I have created some code which took me days to create. And now a partner is using this also. Next time I will protect my code changes. Not all source code but only libraries and processes. If hope this tool works in NAV 2009 R2? Can this be confirmed?
  • NimirNimir Member Posts: 7
    Could you please tell how you can unsqueeze code? Is it possible?
  • O-SeeO-See Member Posts: 4
    We took on a client with some modifications by another partner.
    We made some addons to their system, but the previous partner had put some licensing checking code in their modification and squeezed it.
    We couldn't implement our modification, because when we changed the license to include our tables and forms, the old modification caused an error, because the license had been changed.
    THAT is blackmail. Or at least a hostage situation.

    If a squeezed object is re-compiled, it loses all its functionality(!). Even if you have a backup of the database,
    you can't export objects from the backup and import it to the production database, because the objects doesn't contain any source code.

    The only way would be to backup all the data, restore to the backup database, and then import the data.
Sign In or Register to comment.