首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android 11 正式版发布

HEIF 动画可绘制对象 :ImageDecoder API 现在允许您解码和渲染存储在 HEIF 文件中的图像序列动画,方便您引入高品质的素材,同时最大程度地减少流量消耗和 APK 尺寸。...原生图像解码器 :应用可以使用新的 NDK API 来通过原生代码解码和编码图像 (如 JPEG、PNG、WebP),以便进行图形或后期处理,而且因为您无需捆绑外部代码库,从而得以保持较小的 APK 尺寸...支持低延迟播放的视频编解码器会在解码开始后尽快返回流的第一帧。应用可以使用新 API 来针对特定编解码器 检查 和 配置 低延迟播放。...新的屏幕类型 :对挖孔屏或瀑布屏设备,请确保根据需要针对这些屏幕测试和调整您的内容。详细信息请访问 官方文档。 除此之外,Android 11还在以下功能上做了改进和优化。...应用通过基于通知的 Bubbles API 来实现此功能。 5G: 如果您的应用或内容可以利用 5G 更快的速度和更低的延迟,请参考我们的 开发者资源,开始构建 5G 体验。

1.2K50

JSON Web 令牌(JWT)是如何保护 API 的

保护HTTP API的困难在于请求是 无状态的 —— API 无法知道是否有两个请求来自同一用户。 那么,为什么不要求用户在每次调用 API 时提供其 ID 和密码呢?仅因为那将是可怕的用户体验。...这不是一种加密方式,任何人都可以 轻松解码 以查看原始数据。 我们可以对这些字符串进行解码,以更好地了解JWT的结构。 Header 以下是 Token 中的已解码 Header 部分。...如果你想, Payload 可以包含任何数据,但是如果 Token 的目的是 API 访问身份验证,则可以仅包含用户 ID 。...但是,由于我们知道签名包括标头和有效负载,因为它们是公共信息,所以如果您知道哈希算法(提示:通常在标头中指定),则可以生成相同的哈希。 但是只有服务器知道的秘密 不是 公共信息。...认证过程 因此,现在您对令牌的创建方式有了一个很好的了解。您如何使用它来验证您的API? 登录 用户登录时会生成令牌,令牌会与用户模型一起存储在数据库中。

2.1K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    这 6 个方面,对微服务安全至关重要

    但是使用官方镜像并不会自动为您带来更高的安全性。它们极大地增加了您的安全态势,但它们并非万无一失。您需要问自己是否真的需要一个实际的基于发行版的镜像(如 Ubuntu 或 CentOS 镜像)。...您将自己为该镜像添加相当多的图层。当然,你不会故意在自己的镜像中引入漏洞,但不要忘记依赖关系。您甚至可能没有意识到您安装的几乎任何东西都会带来一些(有时是隐藏的)依赖关系。...他们的目的正是:将秘密安全地存储在 Kubernetes 中,因此您无需将它们以纯文本形式传递给您的容器。但是有一个问题!首先,您需要先将您的秘密带到您的 Kubernetes 集群中。...许多安全商店都有插件或其他机制来安全地将您的 Secrets 传输到 Kubernetes 集群。 5. 网络 最后但同样重要的是:网络。...如果您使用的是 Kubernetes,默认情况下您的所有微服务都可以相互通信。这意味着攻击者只需要访问其中一个,就可以连接到集群中的任何东西。

    38520

    [安全 】JWT初学者入门指南

    在此方法中,为用户提供可验证凭据后会生成令牌。初始身份验证可以是用户名/密码凭据,API密钥,甚至来自其他服务的令牌。(Stormpath的API密钥身份验证功能就是一个例子。) 有兴趣了解更多?...因为令牌是使用密钥签名的,所以您可以验证其签名并隐含地信任所声称的内容。 JWE,JWS和JWT 根据JWT规范,“JWT将一组声明表示为以JWS和/或JWE结构编码的JSON对象。”...这里真正的问题是,你安全地使用它们吗?在Stormpath,我们遵循这些最佳实践,并鼓励我们的客户也这样做: 将您的JWT存储在安全的HttpOnly cookie中。...每次使用令牌对用户进行身份验证时,您的服务器必须验证令牌是否已使用您的密钥签名。 不要将任何敏感数据存储在JWT中。这些令牌通常被签名以防止操纵(未加密),因此可以容易地解码和读取权利要求中的数据。...不要犹豫,报告任何问题,建议改进,甚至提交一些代码! JSONWebToken.io JSONwebtoken.io是我们创建的一个开发工具,可以轻松解码JWT。

    4.1K30

    2023年云原生领域重点关注的几个Sandbox项目

    Teller的主要目标是为开发人员服务,并提供一种安全的方式来使用敏感数据,而无需在源代码、shell中硬编码它们,或者将它们放错文件中。...使用teller.yaml文件,您可以配置Teller以Vault、Consul、AWS Secret Manager、Google Secret Manager等方式连接到秘密存储,以便从中提取敏感数据并安全地访问您的敏感数据...Teller还有一些功能,因为它可以用于CI流程中的DevSecOps目的,以检查源代码中的敏感信息,用作文件、日志或应用程序输出中敏感数据的缩减工具,等等。...OpenFunction允许您使用自定义CRD定义与函数交互的事件类型,如触发器、eventsource、eventbus等。...外部秘密允许敏感数据从外部秘密存储复制到Kubernetes秘密。对秘密商店中相关秘密的任何更改都将同步到您的k8s秘密,无需手动干预。

    64620

    Go Web 编程--如何确保Cookie数据的安全传输

    HttpOnly 为避免跨域脚本 (XSS) 攻击,通过JavaScript的API无法访问带有 HttpOnly 标记的Cookie,它们只应该发送给服务端。...数据未加密,仅仅是被编码了,任何人都可以把Cookie数据解码回来。...加密Cookie 数据 每当将数据存储在Cookie中时,请始终尽量减少存储在Cookie中的敏感数据量。不要存储用户密码之类的东西,并确保任何编码数据也没有此信息。...在某些情况下,开发人员在不知不觉中将敏感数据存储在Cookie或JWT中,因为它们是base64编码的,但实际上任何人都可以解码该数据。它已编码,未加密。...Go语言安全地传输Cookie数据外,再次格外强调一遍,编码和加密的不同,从数据可读性上看,两者差不多,但本质上是完全不一样的: 编码使用公开可用的方案将数据转换为另一种格式,以便可以轻松地将其反转。

    70720

    适用于Java开发人员的微服务:管理安全性和机密

    最后,在我们开始之前,请将Java SE的安全编码指南作为您团队中任何Java开发人员的必读内容。此外,Java SE平台官方文档包括了所有与Java安全性相关的规范、指南和api的良好摘要。...尽管如此,许多组织仍然将配置存储在服务附近的配置文件中,甚至硬编码在代码中。更糟糕的是,此类配置通常包含敏感信息,例如访问数据存储、服务帐户或加密密钥的凭据。这类资料属于机密,绝不能公开泄露。...像git-secrets这样的项目可以帮助您避免将机密和凭证提交到源代码控制存储库中。 幸运的是,有几种选择。 最简单的方法是使用加密并仅存储加密的值。...Vault密钥/值存储插入为应用程序属性源。...在“确保机密安全”部分中,我们讨论了管理加密密钥的方法,但是您仍然必须决定是否应在应用程序级别或存储级别对数据进行加密。

    1.3K30

    加密 K8s Secrets 的几种方案

    前言 你可能已经听过很多遍这个不算秘密的秘密了--Kubernetes Secrets 不是加密的!Secret 的值是存储在 etcd 中的 base64 encoded(编码)[1] 字符串。...这意味着,任何可以访问你的集群的人,都可以轻松解码你的敏感数据。任何人?是的,几乎任何人都可以,尤其是在集群的 RBAC 设置不正确的情况下。任何人都可以访问 API 或访问 etcd。...解决方案:将您的 Secret 加密到 SealedSecret 中,即使在公共存储库中也可以安全存储。...选择这些解决方案的客户可以决定将机密存储在集群上或集群外。...不希望将秘密存储在 etcd 中作为 Kubernetes 秘密的客户主要会选择 SSCSI,原因如下 •他们可能有严格的合规性要求,因此有必要仅在中央存储区而非集群中存储和管理机密。

    1K20

    如何保护K8S中的Deployment资源对象

    :决定一个进程是否可以获得比其父进程更多的权限;如果容器以 Privileged 或具有 CAP_SYS_ADMIN 功能运行,则始终为 true。...作为一个组织,您可以创建基本镜像并与开发人员共享它们,然后开发人员可以从他们的内部存储库中安全地使用它们。...它们仅包含您的应用程序和依赖库,而 Linux 操作系统上通常可用的包管理器、shell 和程序已被删除。...您可以使用文字值或文件创建 Secret,然后将它们挂载到 pod 中。不要将此类信息存储在容器映像和 Git 存储库中。...请记住,Secrets 是 base64 编码的值。它们未加密,因此必须限制对安全对象的访问,并且您应该 在 API 服务器的写入时启用加密。

    75020

    Android 11 正式发布 | 开发者们的舞台已就绪

    △ 将高速体验带出家门,5G 可以让您的随行移动体验更加流畅,让您随时与周边环境、朋友、家人互动并满足工作的需要 新的屏幕类型  - 设备厂商们也在持续进行创新,将新的屏幕形态投入市场,包括挖孔屏和瀑布屏...- ImageDecoder API 现在允许您解码和渲染存储在 HEIF 文件中的图像序列动画,方便您引入高品质的素材,同时最大程度地减少流量消耗和 APK 尺寸。...原生图像解码器  - 应用可以使用新的 NDK API 来通过原生代码解码和编码图像 (如 JPEG、PNG、WebP),以便进行图形或后期处理,而且因为您无需捆绑外部代码库,从而得以保持较小的 APK...应用可以使用新 API 来针对特定编解码器 检查 和 配置 低延迟播放。 可变刷新率  - 应用和游戏现在可以通过 新的 API 为其窗口设置首选帧率。...新的屏幕类型  - 对挖孔屏或瀑布屏设备,请确保根据需要针对这些屏幕测试和调整您的内容。详细信息请访问 官方文档。

    1.2K41

    安全如何为数据库选择最佳加密方法

    介绍 加密是对消息或信息进行编码以便只有授权方可以看到它的过程。加密已经进行了几个世纪。例如,在第二次世界大战中,盟军使用不成文的纳瓦霍语发送加密代码,日本人无法解码。...在这篇文章中,我们将探索不同的加密方法,以便您可以将信息安全地存储在数据库中。 您应该选择哪种加密算法? 在选择一种方法之前,了解每种方法的优缺点很重要。...优点包括比非对称密钥加密更快的解密时间,更小的密钥大小,更容易安全地存储或传输,并且不需要分发密钥或证书,因为它使用了共享秘密的概念。 共享密钥是一组只有参与安全通信的人员才知道的字符。...共享秘密可以是只有安全交易的各方知道的任何“密码类型”字符串。 共享秘密可以是预先共享的预共享密钥的形式。...这可以防止窃贼发现用户正在访问的网页或放入表单的信息或通过未加密的在线连接共享的其他个人数据。 MD5 MD5 有多种用例。但最大的是密码的存储。

    69310

    更上一层楼: Android 11 首个开发者预览版到来

    在 Android 11 中,我们正在增强和更新现有的网络连接 API,方便您使用 5G 特有的高速连接。 动态计费状态 API - 您可以使用此 API 查看连接是否处于非计费状态。...安全存储与数据共享 - 应用现在可以通过 BlobStoreManager 与其他应用更轻松、安全地共享二进制大型数据对象 (Blob)。.../reference/a… 图像与摄像头改进 HEIF 动画可绘制对象 - ImageDecoder API 现在允许您解码和渲染存储在 HEIF 文件中的图像序列动画,方便您引入高品质的素材,同时最大程度地减少对网络数据和...原生图像解码器 - 应用可以使用新的 NDK API 来通过原生代码解码和编码图像 (JPEG、PNG、WebP),以便进行图形或后期处理,而且因为您无需捆绑外部代码库,从而依然得以保持较小的 APK...支持低延迟播放的视频编解码器会在解码开始后尽快返回流的第一帧。应用可以使用新 API 来针对特定编解码器检查和配置低延迟播放。

    1K10

    Android 9.0 强势来袭,带来了哪些新特性?

    您可以使用此额外功能预先填充应用中的文本字段,以便用户完成回复。 确定对话是否是群组对话:您可以使用setGroupConversation() 有目的地将对话识别为群组或非群组对话。...要解码图像,请先createSource() 使用编码图像的来源进行调用 。...保密密钥导入Keystore Android 9通过添加使用ASN.1编码的密钥格式将加密密钥安全地导入密钥库的功能,提供了额外的密钥解密安全性。...允许仅在未锁定设备上进行密钥解密的选项 Android 9引入了unlockedDeviceRequired标志。此选项确定在允许使用指定密钥解密任何正在传输或存储的数据之前,密钥库是否要求解锁屏幕。...这些类型的密钥非常适合加密要存储在磁盘上的敏感数据,例如运行状况或企业数据。该标志为用户提供了更高的保证,即如果手机丢失或被盗,设备被锁定时数据无法解密。

    3.5K20

    Encoding and Decoding Custom Types

    OverView 许多编程任务涉及通过网络连接发送数据,将数据保存到磁盘或将数据提交到API和服务。 这些任务通常要求在传输数据时将数据编码和解码为中间格式。...遵循这些协议,编码器和解码器协议的实现会被允许获取您的数据,并将其编码或解码为外部表示形式(如JSON或属性列表)。...(from:) 和 encode(to:), // 尽管它们并没有显式写到声明中 } 在您自己的类型上采用Codable使您可以将它们序列化为任何内置数据格式,以及自定义编码器和解码器提供的任何格式...例如,某些应用程序只需要调用远程网络API,而不需要解码包含相同类型的响应。 如果您只需要支持数据编码,则声明符合Encodable。...当存在此枚举时,其case充当属性权威列表,在编码或解码可编码类型的实例时该属性必须包含在内。枚举case的名称应与您为类型中的相应属性指定的名称相匹配。

    1.9K40

    JWT-JSON Web令牌的深入介绍

    签名 结合一切 JWT如何保护我们的数据 服务端如何校验从客户端过来的JWT 结论 进一步阅读 基于会话的身份验证和基于令牌的身份验证 对于使用任何网站,移动应用程序或桌面应用程序……您几乎需要创建一个帐户...这就是基于令牌的身份验证诞生的原因。 使用此方法,服务器会将用户登录状态编码为JSON Web令牌(JWT),并将其发送给客户端。 如今,许多RESTful API都在使用它。...那么,如果有中间人攻击可以获取JWT,然后解码用户信息怎么办? 是的,这是可能的,因此请始终确保您的应用程序具有HTTPS加密。...此Secret字符串对于每个应用都是唯一的,并且必须安全地存储在服务器端。 从客户端接收JWT时,服务器获取签名,并验证签名是否已通过与上述相同的算法和Secret字符串正确地进行了哈希处理。...如果它与服务器的签名匹配,则JWT有效。 重要! 当发送给服务端时,有经验的程序猿仍然可以添加或编辑有效载荷信息。 在这种情况下我们该怎么办? 我们先存储令牌,然后再将其发送给客户端。

    2.4K30

    深入浅出JWT(JSON Web Token )

    这些信息可以通过数字签名进行验证和信任。 可以使用秘密(使用HMAC算法)或使用RSA的公钥/私钥对对JWT进行签名。...但为避免冲突,应在IANA JSON Web令牌注册表中定义它们,或将其定义为包含防冲突命名空间的URI。...Notice: 请注意,对于已签名的令牌,此信息尽管受到篡改保护,但任何人都可以阅读。 除非加密,否则不要将秘密信息放在JWT的有效内容或标题元素中。...要创建签名部分,您必须采用编码标头,编码有效载荷,秘钥,标头中指定的算法并签名。...在JWT中,不应该在Playload里面加入任何敏感的数据,比如像密码这样的内容。如果将用户的密码放在了JWT中,那么怀有恶意的第三方通过Base64解码就能很快地知道你的密码了。 5.

    4.1K111

    Openstack Barbican部署选项如何保护您的云

    Barbican是一种OpenStack服务,允许运营商和用户安全地管理和存储秘密。它包含一个OpenStack API,提供keystone认证,oslo。策略和配额,以及存储秘密的后端。...安全存储选项 秘密存储插件允许Barbican与后端交互来存储、生成和检索秘密。主要有两种类型。...这些插件提供了逻辑和特权分离,因为秘密存储在完全独立的应用程序中,通常存储在专用网络的独立服务器上。此外,系统作为一个整体更容易被认证为符合标准,例如通用标准,因为您可以限制评估目标(TOE)。...加密插件是第二种类型的秘密存储插件。他们把秘密加密并直接储存在巴比肯数据库中。它们可以提供性能优势,因为它们不需要Barbican访问外部KMS。...选择正确的秘密存储的提示 选择Barbican背后的秘密存储是一个重要的决定,它将影响您的秘密管理系统的安全性、性能、可伸缩性和成本。有许多因素需要考虑,这将是具体到您的需求。

    2.3K00

    JWT

    JWT可以使用密匙签名(兼用HMAC算法)或使用RSA或ECDSA的公用/专用密钥对来进行签名 尽管JWT可以进行加密以便在各方之间提供保密性,但是我们将重点关注已签名的令牌(指JWT)。...:令牌的类型和所使用的签名算法(如HMAC SHA256或RSA) 例如: { "alg": "HS256", "typ": "JWT" } 然后,上面的JSON被Base64Url编码以形成JWT...的第一部分 3.2 Payload(有效负载) 令牌的第二部分是有效负载,其中包含声明,而声明是有关实体的(通常是用户)和其他数据的声明,声明有三种类型:注册的、公共的、私有的 注册声明(建议但不强制使用...} 然后,对有效负载进行Base64Url编码,以形成JSON Web令牌的第二部分 请注意,对于已签名的令牌,此信息尽管可以防止篡改,但任何人都可以读取。...除非将其加密,否则请勿将机密信息放入JWT的有效负载或头部中 3.3 Signature(签名) 要创建签名部分,你必须获取编码后的头部,编码后的有效负载、密匙以及头部声明的加密算法,并对他们进行签名

    2.2K20

    2019 VOD编码工具指南

    需要提醒您的是,接下来的内容主要基于VOD编码器而非实时编码器撰写,我们希望此文章可以涉及所有相关类别的编码工具;除此之外,本指南中的产品列表旨在提供示例而非展示细节;最后Beamr的调查还明确了任何本地编码指南的开始阶段...是否计划支持近期或者未来的编解码器如:HEVC、VP9、AV1、VVC;例如编码或者封装容器是否支持HLS集成分发HEVC、H.264或使用DASH编码的VP9、AV1梯度编码呢?...如果控制器出现故障,整个集群是否崩溃,或者是否存在冗余? 技术支持需要多少费用,特别是在安装和设置期间以及此后的正常操作问题? 有任何设置或安装费用吗? 软件和任何硬件售后更新的持续成本是多少?...CMAF将会大幅度简化编码过程并削减存储与其他运营成本,同时维持多路传输复用或实时切片打包 7*24运行的能耗。...作为最后建议,您应该始终与当前客户沟通,了解最初设置状态,程序稳定性情况,如何提供迅速支持,以及公司未来要求。当然供应商只会为你提供合适的客户,但任何信息有总比没有强。

    1.7K41

    分享一篇详尽的关于如何在 JavaScript 中实现刷新令牌的指南

    然后,资源服务器可以解码令牌以验证用户的身份并授权访问受保护的资源。 当 JWT 用作刷新令牌时,它通常使用指示当前访问令牌的过期时间的声明进行编码。...标头(Header) 标头通常由两部分组成:令牌的类型(JWT)和所使用的签名算法(例如 HMAC SHA256 或 RSA)。...签名(Signature) 要创建签名部分,您必须获取编码的标头、编码的有效负载、秘密、标头中指定的算法,然后对其进行签名。...需要注意的是,此示例使用 localStorage 来存储令牌。您可以使用其他存储方法,例如 sessionStorage 或 cookie。...例如,使用刷新令牌会增加应用程序的复杂性,如果处理不当,还会增加令牌泄露的风险。因此,彻底测试您的实施并留意任何潜在的安全漏洞非常重要。

    41030
    领券