3 ms·
You may be interested in WebAssembly Components: https://component-model.bytecodealliance.org/ https://component-model.bytecodealliance.org/. Components can't
by jeffparsons 2y ago
You may be interested in WebAssembly Components: https://component-model.bytecodealliance.org/ https://component-model.bytecodealliance.org/.
Components can't do any IO or interfere with any other components in an application except through interfaces explicitly given to them. So you could, e.g., have a semi-untrusted image compression component composed with the rest of your app, and not have to worry that it's going to exfiltrate user data.
- xrd 2y agoIt doesn't seem like a stretch that an LLM will very soon be able to configure your dependent web assembly components to permit the dangerous access. It feels like this model of security, while definitely a step in the right direction, won't make a novice vibe coder any more secure.
- crazygringo 2y agoIt seems like it would be rare, though. An LLM might hallucinate the wrong permissions, but they're going to be plausible guesses. It's extremely unlikely to hallucinate full network access for a module that has nothing to do with networking.
- xrd 2y agoI'm saying no hallucination will be happening. The LLM will happily write code that permits network access, because it read online an example that did that. And, unless you know better, you won't know to manually turn that off. Sandboxed WebComponents does not solve anything if your LLM thinks it is helping when it lets the drawbridge down for the orcs.
- crazygringo 2y agoThat's a separate conversation then, because there's wrong information everywhere, but LLM's still do mostly OK. They don't just regurgitate stuff blindly, they look for patterns. And the article here is specifically about hallucinations, when it tries to plausibly fill something in according to a pattern. Wrong information on the internet is as old as the internet...
- xrd 2y agoWrong code on the Internet does not steal your credit card information. Wrong code on localhost does. But, I think we agree, anyway.
- rini17 2y agoSo you refuse to learn from the history, because that's basically the UNIX model. That you string together simple text processing programs and any misbehaving program gets sigsegv without endangering anything, you don't have to worry. But it transpired that: 1. splitting functionality in such way is not always possible or effective/performant, not to mention operators in practice tend to find fine grained access control super annoying 2. and more importantly, even if the architecture is working, hostile garbage in your pipeline WILL cause problems with the rest of your app.