我看到很多方法来保护css文件但是没有一个是100%安全的,换句话说,操作块并获取css文件非常容易。我想知道保护CSS的最佳方法是什么。
答案 0 :(得分:4)
CSS文件,如javascript和HTML,可以缩小。对于所有这三个,可以删除它们的空格以减少文件大小。对于CSS和Javascript(以及HTML中的类和id名称),可以对它们的标记进行模糊处理(这意味着代替像.nav-link
这样的逻辑类名称,选择无意义的标记,如.bz0
)。这样做的问题在于它非常难以维护,因为CSS中的类和id名称必须相应地在相关的HTML和Javascript中进行更改,以便混淆不会破坏任何内容。这通常会使您的代码混淆更多麻烦然后是一个好处(尽管如果您GMail查看其来源将显示Google会这样做,尽管这可以说是为了节省空间)。
但是,如果您有兴趣,请查看此SO主题:tools for obfuscating html and css
但是,无论您是否使用模糊处理,底线都是浏览器必须能够解析您的CSS,这意味着它需要访问文件本身。无论是否混淆,决定窃取你的CSS的人都可以这样做。虽然,我不明白为什么这会有益,因为CSS通常是特定于域的(意味着单个文件只针对一个网站或一小部分网站)。
我认为可以起到威慑作用的好处是在所有CSS文件的顶部发表礼貌评论。
/*
* #####
* #### _\_ ________
* ##=-[.].]| \ \
* #( _\ | |------|
* # __| | ||||||||
* \ _/ | ||||||||
* .--'--'-. | | ____ |
* / __ `|__|[o__o]|
* _(____nm_______ /____\____
*
* Hey you! Looks like you found our main css file through some l33t h4x0ry.
* You're welcome to give it a read-through if you'd like. But if you want to
* barrow something clever and use it in your projects we'd really appreciate a
* mention. Thanks!
*/
当然,您编写的代码受版权保护(我不是律师,所以请不要让我这样做),所以您可以尝试发布版权声明:
/*
* (c) 2013 Your Company. All rights reserved.
*/
但我认为这会被忽略。更多会话消息可能会受到更多关注。
编辑:杰夫阿特伍德也不是律师,但他的经验比我更多,并根据他的blog post on open source licenses:
没有许可证,默认情况下代码受版权保护。人们可以阅读代码,但他们没有合法的权利使用它。要使用该代码,您必须直接与作者联系并获得许可。